自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

qq_30712357的博客

坚持学习

  • 博客(39)
  • 收藏
  • 关注

转载 001-SE-JAVA8新特性

一、接口的默认方法在接口中新增了default方法和static方法,这两种方法可以有方法体 1、static方法 示例代码:public interface DefalutTest { static int a =5; default void defaultMethod(){ System.out.println("DefalutTest defalut 方法"...

2018-05-30 21:54:01 219 1

原创 001-SE-0020-JAVA7新特性

switch中使用String * java7以前在switch中只能使用number或enum。 * 现在可以使用string了。 try-with-resources * java7以前对某些资源的操作是需要手动关闭,如InputStream,Writes,Sockets,Sql等,需要在finally中进行关闭资源的操作 * 现在不需要使用finally来保证打开的流被正确关闭,现...

2018-05-30 21:15:45 188

原创 004-框架-001-springboot

pom.xml<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/ma...

2018-05-26 15:03:58 110

原创 003-设计模式-002-工厂方法模式

工厂方法模式有3种*.普通工厂模式:     * 对实现同一接口的类进行实例的创建      * 工厂类提供一个创建对象的方法     * 创建对象的方法有一个入参,参数不同,创建的对象不同 *.多方法工厂模式:     * 对实现同一接口的类进行实例的创建      * 工厂类提供多个普通(非静态)创建对象的方法     * 每个方法创建的对象不同 *.静态工厂模式:     * 对实现同一接口...

2018-05-09 23:32:37 145

原创 003-设计模式-0001-单例模式

饿汉式(类加载时立即初始化,线程安全,推荐使用)package pack; /** * 单例模式:饿汉式 * @author fanshoujun * */ public class Singleton { private Singleton() { } private static final Singleton singleton = new Singleton(); ...

2018-05-09 23:07:57 89

原创 002-EE-0015-读取配置文件

使用Class的getResourceAsStream("文件路径")方法读取配置文件 文件路径如果不以/开始则表示调用这个方法的类所在的目录 文件路径如果以/开始则表示工程根目录 * java工程根目录:workspace/工程/bin/ * web工程:tomcat/webapps/WEB-INF/classes/ * maven工程 * jar工程:workspace/工程/tar...

2018-04-27 00:21:36 135

原创 002-EE-0014-filter

过滤器 * filter是对客户端访问资源的过滤,符合条件放行,不符合条件不放行 * 可以对目标资源访问前后进行逻辑处理 步骤 * 编写一个过滤器的类实现Filter接口 * 实现接口中尚未实现的方法(着重实现doFilter方法) * 在web.xml中进行配置(主要是配置要对哪些资源进行过滤) Filter对象的生命周期 * Filter何时创建:服务器启动时就创建该fil...

2018-04-26 22:41:54 189

原创 002-EE-0013-发邮件

QQ邮件打开邮箱-->点击设置-->点击账户-->点击开启"POP3/SMTP服务"-->验证身份-->得到16位口令-->记住口令只修改xxx的地方(一共3个)package pack; import java.util.Properties; import javax.mail.Authenticator; import javax.mail.Passwo...

2018-04-25 00:21:29 412

原创 002-EE-0012-监听器

监听器 * 监听某个对象的状态变化的组件 * 事件源 * 被监听的对象 * 三个域对象 * request * session * ServletContext * 监听器 * 监听事件源对象,事件源对象的状态的变化都会触发监听器 * 6+2 * 注册监听器 * 将监听器与事件源进行绑定 * 响应行为 * 监听器监听到事件源的状态变化时所涉及的功能代码...

2018-04-24 23:23:37 114

原创 002-EE-0011-json

JSON * JavaScript Object Notation * JS对象标记,是js的原生内容 * 一种与语言无关的数据交换的格式 json有两种格式: * 对象格式:{"key1":obj,"key2":obj,"key3":obj...} * 数组/集合格式:[obj,obj,obj...] JSON 数据的书写格式是:"键"...

2018-04-11 21:42:23 121

原创 002-EE-0010-ajax

常用jquery中的ajax方法 * $.ajax([options]) * get(url,[data],[callback],[type]) * post(url,[data],[callback],[type]) * getJSON(url,[data],[fn]) * getScript(url,[data],[fn]) * load(url,[data],[callback]...

2018-04-11 20:47:27 81

原创 002-EE-0009-jsp

jsp运行原理* 本质是servlet * jsp会在第一次访问时被web容器翻译成servlet再执行 * 翻译后的servlet可以在tomcat的work目录找到9个内置对象out 用于页面输出 request 得到用户请求信息, response 服务器向客户端的回应信息 config 服务器配置,可以取得初始化参数 session 用来保存用户的信息 application ...

2018-04-06 08:58:55 88

原创 002-EE-0008-Cookie和Session

创建Cookie:* Cookie cookie = new Cookie(String cookieName,String cookieValue); * 注意:Cookie中不能存储中文设置Cookie在客户端的持久化时间:* cookie.setMaxAge(int seconds); * 单位秒 * 如果不设置持久化时间,cookie会存储在浏览器的内存中,浏览器关闭cookie信息销毁(...

2018-04-06 08:22:49 92

原创 002-EE-0007-HttpServletRequest AND HttpServletResponse

创建Servlet时如果覆盖service()方法,参数request/response是ServletRequest/ServletResponse 创建Servlet时如果覆盖doGet/doPost方法,参数request/response是HttpServletRequest/HttpServletResponse获得请求行* String getRequestURI()  * 获取请求...

2018-04-05 17:25:07 123

原创 002-EE-0006-上传

占位

2018-04-05 16:38:52 79

原创 002-EE-0005-下载

<a>标签下载1.新建Dynamic工程并命名为webdemo 2.在WebContent下新建文件夹download并在该文件夹下放置一张图片lyf.jpg 3.在WebContent下新建jsp命名为index.jsp 4.运行tomcat,访问localhost:8080/webdemo跳转到首页index.jsp,点击下载 <%@ page language="java...

2018-03-28 21:49:00 124

原创 002-EE-0004-servlet

请求转发 request.getRequestDispatcher("要转发的路径,不要带项目名").forward(request,response); 重定向 response.sendRedirect("要重定向的路径,要带项目名this.getServletContext().getContextPath()"); 在servlet中获取项目名称 this.ge...

2018-03-28 21:45:46 104

原创 002-EE-0003-http

请求的组成响应的组成请求头:请求头是客户端发送给服务器端的一些信息,使用键值对表示key:value请求体    当请求方式是post的时,请求体会有请求的参数,格式如下:        username=zhangsan&password=123    如果请求方式为get,那么请求参数不会出现在请求体中,会拼接在url地址后面        http://localhost:8080....

2018-03-24 17:42:51 124

原创 002-EE-0002-反射

类的加载步骤* 程序使用到某个类时会执行加载、连接、初始化三个步骤 * 加载 * 将class文件读入内存,并为之创建一个Class对象 * 任何类系统使用时都会建立一个Class对象 * 连接 * 验证是否有正确的内部结构,是否和其他类协调一致 * 负责为类的静态成员分配内存,并设置默认初始化值 * 将类的二进制数据中的符号引用替换为直接引用 * 初始化 * 为栈内...

2018-03-19 20:22:31 176

原创 002-EE-0001-XML

XML 命名空间属性被放置于元素的开始标签之中,并使用以下的语法:xmlns:namespace-prefix="namespaceURI"当命名空间被定义在元素的开始标签中时,所有带有相同前缀的子元素都会与同一个命名空间相关联。注释:用于标示命名空间的地址不会被解析器用于查找信息。其惟一的作用是赋予命名空间一个惟一的名称。不过,很多公司常常会作为指针来使用命名空间指向实际存在的网页,这个网页包含...

2018-03-19 20:15:08 111

原创 001-SE-0019-DBCP及DBUtils

DBUtils * Apache commons的一个组件 * 只能操作表中的数据,不能操作表结构 * 常用功能 * QueryRunner中提供对sql语句操作的API. * ResultSetHandler接口,用于定义select操作后,怎样封装结果集. * DbUtils类,它就是一个工具类,定义了关闭资源与事务处理的方法 * 使用步骤 * 导入Jar包:commo...

2018-03-14 21:44:31 139

原创 001-SE-0018-JDBC

db.properties* jdbc.driver=com.mysql.jdbc.Driver * jdbc.url=jdbc:mysql://localhost:3306/databaseName * jdbc.user=root * jdbc.password=root连接数据库工具类(不带连接池)package pack; import java.io.FileReader; impor...

2018-03-12 23:17:07 228

原创 001-SE-0017-数据库

MYSQL :开源免费的数据库,小型的数据库.已经被Oracle收购了.MySQL6.x版本也开始收费。Oracle :收费的大型数据库,Oracle公司的产品。Oracle收购SUN公司,收购MYSQL。DB2 :IBM公司的数据库产品,收费的。常应用在银行系统中.SQLServer:MicroSoft 公司收费的中型的数据库。C#、.net等语言常使用。SyBase :已经淡出历史舞台。提供了...

2018-03-12 22:05:55 218

原创 001-SE-0016-多线程-线程池

Executors工厂类:主要用于生产线程池,API如下 ExecutorService newCachedThreadPool() ExecutorService newFixedThreadPool(int nThreads) ExecutorService newSingleThreadExecutor() 线程池对象 * 即ExecutorService对象 ...

2018-02-09 23:34:48 239

原创 001-SE-0015-多线程-生产消费模式

生产消费模式* 生产者生产包子 * 先看是否有包子,没有就生产,有就等待并通知消费者来消费包子 * 消费者消费包子 * 先看是否有包子,有就消费,没有就等待并通知生产者来生产包子 * java提供了等待唤醒机制等待唤醒机制* Object类提供了等待方法和唤醒方法 * 等待 * wait():进入等待并立即释放锁,等待期间该线程抢不到cpu执行权 * 唤醒 * notify():唤醒绑定在...

2018-02-09 01:07:42 193

原创 001-SE-0014-多线程-锁

死锁问题/* * 同步的弊端: * A:效率低 * B:容易产生死锁 * * 死锁: * 两个或两个以上的线程在争夺资源的过程中,发生的一种相互等待的现象。 * * 举例: * 中国人,美国人吃饭案例。 * 正常情况: * 中国人:筷子两支 * 美国人:刀和叉 * 现在: * 中国人:筷子1支,刀一把 * 美国人:筷...

2018-02-09 01:05:31 231

原创 001-SE-0013-多线程-同步代码

同步代码块// 自定义线程类 package pack; public class MyThread implements Runnable { private static int ticket = 100; private Object obj = new Object(); @Override public void run() { while(true){ sy...

2018-02-09 01:02:03 167

原创 001-SE-0012-多线程-基本概念

基本概念进程:正在执行的应用程序 线程:进程的执行单元,执行路径 多进程的意义? 提高CPU的使用率 多线程的意义? 提高应用程序的使用率 start()和run()的区别 start()先启动线程,再由JVM调用run()方法 run()直接调用仅仅是普通方法 多线程的实现方案(自己补齐步骤及代码掌握) A:继承Thread类,重写run()方法,将需要用多线程执行的...

2018-02-09 00:59:52 226

原创 001-SE-0011-网络编程

网络编程三要素 * ip地址 * 端口 * 协议 InetAddress类 * java操作ip地址的类 * 获取对象 *InetAddress address = InetAddress.getByName(String arg); * 参数arg可以是字符串主机名,例如:"fanshoujun" * 参数arg可以是字符串ip地址,例如:"192.168.126.1...

2018-02-09 00:52:10 275

原创 001-SE-0010-Properties AND CommonsIO工具类

Properties(没有泛型的Map集合)FileReader f = new FileReader("db.properties"); Properties prop = new Properties(); prop.load(f); String driver = prop.getProperty("jdbc.driver"); System.out.println(driver);Comm...

2018-02-09 00:50:53 103

原创 001-SE-0009-其他流

打印流* 只有输出流 * printStream * printWriter * 可以打印任意类型的数据 * 有自动刷新功能,需要手动启动 * 可以直接操作文本的(这里说的直接操作文件就是有直接传入File对象的构造方法的流,高效流不可以操作文件) * printWriter使用举例: PrintWriter pw = new PrintWriter("fos.txt"); ...

2018-02-09 00:48:36 213

原创 001-SE-0008-IO复制

字节流复制文件:* 使用FileInputStream和FileOutputStream复制文件 public class MyTest { public static void main(String[] args) throws Exception { FileInputStream fis = new FileInputStream("fis.txt");//里面的内容是abc ...

2018-02-09 00:43:04 139

原创 001-SE-0007-递归

递归 * 递归调用必须要在某个条件下结束,否则就是死递归。 * 递归调用的层次不能太多,否则会堆栈溢出。 * 构造方法不能递归调用 举例: 阶乘 public class MyTest { public static void main(String[] args) { System.out.println(jiecheng(5)); } public s...

2018-02-09 00:39:23 135

原创 001-SE-0006-异常

Throwable是所有异常和错误的父类,有2个子类 * Error 错误: * 程序中不做处理 * 例如由于内存条太小导致内存溢出 * Exception 异常 * 运行期异常 * 运行时发生的异常,程序中不做处理 * 一般是因为代码逻辑不严谨导致 * 例如 int num = 1/0; * 编译期异常 * 非运行期异常都是编译期异常 * 程序...

2018-02-09 00:37:50 149

原创 001-SE-0005-泛型

泛型 泛型类: 定义:类名后<变量> 如:class A<E> {使用E完成类的定义} 使用:创建对象时使用具体类型替换E 举例: //定义泛型类 public class ObjectTool<E> { private E obj; public E getObj() { return obj; }...

2018-02-09 00:34:56 144

原创 001-SE-0004-二分法查找

* 二分查找的数组只能是从大到小排列的,或从小到大排列的* 当max<min时就返回-1@Test public void testName7() throws Exception { //int[] arr={34,19,11,109,3,56}; int[] arr={13,24,36,41,66,78,109}; int index = halfSerarch(arr,109);...

2018-02-08 23:28:06 175

原创 001-SE-0003-排序

* 选择排序(找最小值)// 0位置的数和其他位置的分别比较,0位置的大,和对方调换位置,0位置小,不动,这样一轮比下来0位置就是最小的数,然后从1位置再比 @Test public void test() throws Exception { int[] arr={34,19,11,109,3,56}; for (int x = 0; x < arr.length-1; x++) { ...

2018-02-08 23:25:49 107

原创 001-SE-0002-内存划分

* 寄存器            由cpu管理,java涉及不到* 本地方法区     和所在系统相关,运行的是本地系统平台中的内容* 方法区            存储已被虚拟机加载的类信息、常量、静态变量、即时编译器编译后的代码等数据,常量池是方法区的一部分* 栈内存            存储的都是局部变量,变量所属的作用域一旦结束,变量自动释放* 堆内存            存的是对象,...

2018-02-08 23:18:51 125

原创 001-SE-0001-for循环

package pack; import static org.junit.Assert.*; import org.junit.Test; public class t { @Test //正方形5*5 public void testName() throws Exception { for (int x = 0; x < 5; x++) { for (int y =...

2018-02-08 23:16:10 268

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除