
java
文章平均质量分 59
bingoCoder
电子信息(软件工程)学生
展开
-
JavaWeb方向基础学习规划图
JavaWeb方向基础学习路线:原创 2019-11-17 21:41:59 · 544 阅读 · 1 评论 -
学生选课系统效果展示及源码分享
直接上干货,网盘分享源码。上学期java程序设计课程设计,我做了一个简单学生选课系统,用Java+jsp+mysql实现。功能很基本,初学者用来研究实战还是不错的。简单贴一下程序运行效果,自己留个纪念。有喜欢的朋友可以在下方的云盘链接里获取,所有源码都可以在MyEclipse或Eclipse中运行。原创 2019-11-07 17:03:56 · 25553 阅读 · 161 评论 -
Java通过反射调用构造方法和一般方法
先说构造方法,在使用Class类中的,newInstance() 取得实例化对象时,会出现一些问题。看下面出错的代码:package com.jmd.bingo;class Person { private String name; private int age;// public Person() {// this.name = "bingo";// this....原创 2018-06-02 16:21:30 · 11867 阅读 · 0 评论 -
Java PreparedStatement操作
连接数据库执行SQL语句,最开始知道的是statement接口,通过下面的方式:String sql = "select id,stu_id,name from student where id = 1";Statement stmt = conn.createStatement();ResultSet rs = stmt.executeQuery(sql); 看李兴华老师的Ja...原创 2018-06-14 20:31:45 · 1701 阅读 · 0 评论 -
使用Ajax由html向Servlet传值
前端代码:<!DOCTYPE html><html><head><meta charset="UTF-8"><title>title</title><script type="text/javascript"> function createXMLHttpReq原创 2018-05-31 19:00:42 · 2828 阅读 · 0 评论 -
简单总结Tomcat整体结构和工作原理
一、Tomcat 软件目录结构及功能bin: 服务相关脚本,例如:启动、关闭等conf: 存放不同的配置文件,列如:server.xml、web.xmllib: tomcat 运行需要的库文件logs: 运行的日志文件webapps: web部署的根目录work :存放jsp编译后的class文件二、server分析系统结构server提供一个接口让其它程序能够访问到这个 Service 集合、同...原创 2018-06-06 21:42:02 · 1168 阅读 · 0 评论 -
Java IO操作
形象理解Java io流。比如水龙头的管道就是一个流:流分为输入和输出,输入流就是水龙头抽水库的水(FileInputStream 将水抽到管道里)。输出流就是水龙头降水注入到装水的水缸。现在有个X.txt,你要读取里面的信息,就相当于要从水库抽水,送到管道里,这时候要用到FileInputStream。读取完并对数据进行了一些操作之后,需要写到另一个Y.txt文件中。这时候相当于...原创 2018-05-30 20:08:57 · 166 阅读 · 0 评论 -
个人的Java基础学习路线
学习Java已有一段时间跟着视频课总结一下学习路线:1 开发环境Java SDK 下载和安装2 环境变量的配置(path和classpath)3 编程基础 标识符命名规范4 Java数据类型5 运算符6 分支语句(if,switch)7 循环语句(for,while)8 函数的定义方法9 面向对象基础 面向对象与面向过程语言之间的区别10 面向对象基本思想(封装)11 类的定义方法12 对象和类的...原创 2018-06-17 22:17:50 · 1354 阅读 · 0 评论 -
Java Web简单登陆功能的实现
首先创建一个简单的数据库:请看表结构:id就当作用户名,stu_id当作密码吧。数据库名叫db_jxgl,里面只有一张student表,具体请看下图: 使用过IDEA之后好像从农村来到了城市,太TM强大了!!! 先创建数据库访问类:package com.jmdx.bingo.sql;import java.sql.*;import java....原创 2018-09-13 16:00:39 · 5815 阅读 · 0 评论 -
蓝桥杯 | Java B组省赛真题练习——振兴中华
题目描述: 小明参加了学校的趣味运动会,其中的一个项目是:跳格子。 地上画着一些格子,每个格子里写一个字,如下所示: 从我做起振 我做起振兴 做起振兴中 起振兴中华 比赛时,先站在左上角的写着“从”字的格子里,可以横向或纵向跳到相邻的格子里,但不能跳到对角的格子或其它位置。一直 要跳到...原创 2019-03-20 16:08:31 · 389 阅读 · 0 评论 -
蓝桥杯 | Java B组省赛真题练习——黄金连分数
标题: 黄金连分数 黄金分割数0.61803... 是个无理数,这个常数十分重要,在许多工程问题中会出现。有时需要把这个数字求得很精确。对于某些 精密工程,常数的精度很重要。也许你听说过哈勃太空望远镜,它首次升空后就发现了一处人工加工错误,对那样一个庞然大物, 其实只是镜面加工时有比头发丝还细许多倍的一处错误而已,却使它成了“近视眼”!! 言归正传,我们如何求得...原创 2019-03-23 07:48:50 · 413 阅读 · 0 评论 -
蓝桥杯 | Java B组省赛真题练习——有理数类
标题:有理数类 有理数就是可以表示为两个整数的比值的数字。一般情况下,我们用近似的小数表示。但有些时候,不允许出现误差,必须用两个整数来表示一个有理数。 这时,我们可以建立一个“有理数类”,下面的代码初步实现了这个目标。为了简明,它只提供了加法和乘法运算。class Rational{ private long ra; private long rb;...原创 2019-03-23 09:14:59 · 413 阅读 · 0 评论 -
蓝桥杯 | Java B组省赛真题练习——三部排序
标题:三部排序 一般的排序有许多经典算法,如快速排序、希尔排序等。 但实际应用时,经常会或多或少有一些特殊的要求。我们没必要套用那些经典算法,可以根据实际情况建立更好的解法。 比如,对一个整型数组中的数字进行分类排序: 使得负数都靠左端,正数都靠右端,0在中部。注意问题的特点是:负数区域和正数区域内并不要求有序。可以利用这个特点通过1次线性扫描就结束战斗!!...原创 2019-03-23 09:27:32 · 309 阅读 · 0 评论 -
插入排序 Java实现
直接插入排序(Straight Insertion Sort)是一种最简单的排序方法,其基本操作是将一条记录插入到已排好的有序表中,从而得到一个新的、记录数量增1的有序表。 这是百度百科关于直接插入排序的定义。 下面是直接插入排序算法的图解: 1.先有一个待排序的数组 2.i 记录已经排好序的数组的长度,在 i 之前的数组已经按照从小到大...原创 2019-03-31 16:00:08 · 219 阅读 · 1 评论 -
排序算法Java实现(优化上一篇内容)
上一篇文章我学习了使用Java实现了最简单的插入排序算法(InsertionSort)。今天接续跟着马士兵老师学习,他讲到了这个程序还有两个待优化的地方。 1.看下面代码:static void sort(int[] array){ for(int i = 1;i<array.length;i++){ //数组的第一个元素被当作已经排好序的一个数,所以i从...原创 2019-04-01 09:22:42 · 341 阅读 · 1 评论 -
Java UUID类
如果现在需要我们随机生成一个不会重复的字符串,我们有什么解决方案? 一般比较好的算法是:电脑的IP地址+时间戳+加任意位数的随机数+移位操作=几乎不会重复的随机字符串。在设计程序的时候如果由用户自己来处理相关操作太过于麻烦,Java为了方便处理,设计了java.util.UUID类,这个类可以生成以上格式的字符串这个类我们主要使用一个 public static UUID rando...原创 2018-06-12 21:30:56 · 4502 阅读 · 0 评论 -
初始Java反射机制,通过修改工厂设计模式理解反射机制的优点
Java反射机制是Java中很重要的一部分,通过反射可以用另一种,不同于new()的实例化类对象的方法。不用Import导包,用Qualified Name 的字符串实例化对象。(forName()方法) 下面代码通过两种方法实例化Date对象。import java.util.Date;public class Fs { public static void main(St...原创 2018-05-28 21:19:28 · 208 阅读 · 0 评论 -
简单理解Servlet
Servlet的由来 简单来说,Servlet是一个作为浏览器与数据库之间的中间层,它是为了解决实现动态页面而衍生的一个java组件。Servlet的作用 浏览器发送请求给Tomcat,Tomcat作为Servlet容器,会找到对应的Servlet并将http请求文本接收并解析,然后封装成HttpServletRequest类型的request对象。Servlet接受处理通过设...原创 2018-05-09 19:55:30 · 707 阅读 · 0 评论 -
Java中Set真的是无序的吗?
我们经常听说List是有序且可重复的,Set是无序且不重复的。这是一个误区,这里所说的顺序有两个概念,一是按照添加的顺序排列,二是按,照自然顺序a-z排列。Set并不是无序的传统所说的Set无序指的是HashSet,它不能保证元素的添加顺序,更不能保证自然顺序,而Set的其他实现类是可以实现这两种顺序的。1,LinkedHashset : 保证元素添加的自然顺序2,TreeSet ...原创 2018-05-09 20:30:47 · 38636 阅读 · 9 评论 -
初识JDBC
JDBC(Java DataBase Connectivity ) 是Java运行平台的核心类库中的一部分,提供了访问数据库的API,它由一些Java类和接口组成。在Java中可以使用JDBC实现对数据库中表记录的查询、修改和删除等操作。JDBC技术在数据库开发中占有很重要的地位。 下面代码实现了简单的连接、简单查询语句的操作:package com.szb.dbutil;im...原创 2018-05-03 18:24:50 · 139 阅读 · 0 评论 -
探究HashSet如何判断元素相同
下面程序提供了A、B、C三个类,他们分别重写了equals(),hashcode(),两个方法中的一个或全部,通过此程序我们能大概看到HashSet判断元素相同的标准 。package shi;import java.util.HashSet;//类A重写了equals()方法,使equals()方法总是返回true,但是没有重写hashCode()方法class A {...原创 2018-05-10 21:12:47 · 2135 阅读 · 0 评论 -
再识JDBC
上一篇文章中介绍了关于jdbc的简单连接数据库操作,所有代码都写在main方法中,看着有些麻烦。连接数据库操作对于大部分简单程序是差不多的,所以这次再识JDBC,我将数据库的连接,封装到一个类中。将数据库的连接,与访问操作分离。减少了代码的耦合,提高了复用性。package com.szb.dbutil;import java.sql.Connection;import ja...原创 2018-05-04 17:58:09 · 137 阅读 · 0 评论 -
JVM垃圾回收流程
昨天在网易云课堂上看李兴华老师的Java视频,讲到了GC回收垃圾的流程。这部分知识在开发的时候不容易用到,但是懂一点JVM的底层知识,是不是显得我们很有钻研的精神,很踏实呢?整个流程大概是: 当有新对象产生时,会保存在Eden(伊甸园,万物诞生的地方)中。之后这个对象不会在Eden中久留,它会被保存在年轻代中。而后在进行GC后,在新生代中保留下来的对象会被保存到旧生代...原创 2018-05-17 19:03:45 · 1097 阅读 · 1 评论 -
Calendar类的用法以及利用round() 四舍五入的小技巧
通过下面代码简单了解一下Calendar类的用法。注意:Calendar.MONTH 是从0开始的import java.util.Calendar;public class CalendarTest { public static void main(String[] args) { Calendar cal = Calendar.getInstance(); StringBuf...原创 2018-05-18 22:39:11 · 406 阅读 · 0 评论 -
匿名类,自定义异常类的简单用法
使用匿名类:interface Student { public void speak();}calss Teacher { public void call(Student stu) { stu.speak(); }}public class Test { Teacher teacher = new Teacher(); teacher.call(new Student ...原创 2018-05-12 21:16:28 · 604 阅读 · 0 评论 -
简单了解代理设计模式(Proxy)
代理设计模式是在Java开发中使用的较多的一种设计模式。所谓代理设计模式是指一个代理主题来操作真实主题,真实主题执行具体的业务操作,而代理主题负责其它相关业务的处理。好比生活中经常使用到的代理上网,客户通过网络代理连接网络,由代理服务器完成用户权限,访问限制等与上网相关的操作。interface Network { public void browse();}class Re...原创 2018-05-06 18:00:18 · 770 阅读 · 0 评论 -
hashCode()方法对HashSet,HashMap的重要作用
上一篇文章介绍了HashSet是如何判断元素相同的,其中有一个很重要的方法是hashCode()。从《疯狂Java讲义》中看到了hashCode()方法的具体作用,记录一下。 hash(也被翻译为哈希、散列)算法的功能是,它能保证快速查找被检索的对象,hash算法的价值在于速度。当需要查询集合中的某个元素时,hash算法可以直接根据元素的hashCode值计算出该元素...原创 2018-05-13 18:36:54 · 1510 阅读 · 0 评论 -
通过Annotation和web.xml来配置servlet
最近入门学习JavaWeb,用简单的登录注册效果练练手。通过指定FROM的action属性,将用户提交的内容传输到后台servlet处理。后台如何接收前台传输的信息呢?通过配置 WEB-INF文件夹下的web.xml文件中的<servlet></servlet>和<servlet-mapping></ser...原创 2018-04-28 16:04:27 · 430 阅读 · 0 评论 -
快速排序
1.快速排序的原理: 选择一个关键值作为基准值。比基准值小的都在左边序列(一般是无序的),比基准值大的都在右边(一般是无序的)。从后往前比较,用基准值和最后一个值比较,如果比基准值小的交换位置,如果没有继续比较下一个,直到找到第一个比基准值小的值才交换。找到这个值之后,又从前往后开始比较,如果有比基准值大的,交换位置,如果没有继续比较下一个,直到找到第一个比基准值大的值才交换。直到从...原创 2018-05-07 16:37:29 · 152 阅读 · 0 评论 -
Java多线程学习——用抛出异常的方法结束线程。
昨天开始看《Java多线程编程核心技术》一书。记录一些所学:1.通过查看“Windows资源管理器”中的列表,完全可以将运行在内存中的.exe文件理解成一个线程,线程是受操作系统管理的基本运行单元。2.非线程安全:指多个线程对同一个对象中的同一个实例变量进行访问时会出现值被修改不同步的情况,进而影响程序的执行流程。3.Thread.currentThread().interrupt...原创 2018-05-20 20:10:04 · 2693 阅读 · 0 评论 -
Java使用synchronized进行多线程同步
多个线程访问一些程序中的资源时,会发生资源抢占。我们用线程同步来解决这个问题,保证线程安全。如果有一个全局变量 int sum = 1;有A,B两个线程对sum进行操作,他们获取资源时都是sum = 1,而线程A对其进行+1写回去变成了 2,如果我们希望线程B对其也进行+1操作后sum = 3,但是因为B线程获取到的是sum = 1,所以操作后写回去也是sum = 2 。为了解决类...原创 2018-05-15 19:43:51 · 413 阅读 · 0 评论 -
Android 利用Service播放音乐
1.新建Service类:覆写onCreate()onStartCommand() onDestory() 方法。Service中定义MediaPlayer类对象,用来播放音乐。package com.engineer.shizhibin.music;import android.app.Service;import android.content.Intent;import androi...原创 2018-06-03 18:06:41 · 2986 阅读 · 0 评论 -
多线程中生产者消费者模型代码练习
理解的还不是太透彻,先把代码照着敲下来,慢慢感悟吧。。。package shi;class Message { private String title; private String content; private boolean flag = true; //flag = true 表示可以生产,不能消费 //flag = false 表示可以消费,不能生产 p...原创 2018-05-16 19:35:20 · 245 阅读 · 0 评论 -
简单理解工厂设计模式----Factory
工厂设计模式是java开发中使用最多的设计模式。 观察下面的代码,思考有什么问题:interface Fruit { //定义接口 public void eat();} class Apple implements Fruit { //实现接口 public void eat() { System.out.println("吃苹果。"); }...原创 2018-05-02 22:02:05 · 240 阅读 · 0 评论