自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(105)
  • 资源 (4)
  • 收藏
  • 关注

原创 Mysql 必知必会 学习日记-day 001

Concat()连接符Concat()拼接串,把多个串拼接起来形成一个较长的串,之间用`,`分隔。Trim 函数去掉左右两边的空格LTrim() 去掉左边的空格。RTrim() 去掉右边的空格。Upper函数将文本转大写Lower 函数将文本转小写SubString返回子串的字符Length返回串的长度Soundex函...

2018-05-10 16:24:27 241 1

原创 java设计模式之6大设计原则day01

一、 单一职责原则1.1单一职责原则的英文名称是Single Responsibility Principle,简称是SRP1.2There should never be more than one reason for a class to change1.3 单一原则好处类的复杂性降低,实现什么职责都有清晰明确的定义可读性提高,复杂性降低,那当然可读性提高了可维护性提高,可读性提高,那当

2017-12-28 09:24:31 329

原创 java设计模式之策略模式

策略模式理解: 针对一组算法,我们将不同的算法封装到实现基础的接口的独立实现类中,从而我们可以在不同场景灵活根据不同的实现类去调用不同的算法。三个角色Context 环境角色 持有一个stategy的引用,可以根据这个不同场景的引用调用不同的算法去实现Strategy 抽象类策略角色 给出所有的具体策略类所需的接口,其实就是申明我们所要调用的接口ConcreteSt

2017-12-23 14:49:06 443

原创 java并发编程day08

5.4 阻塞和可中断的方法线程可能会因为几种原因被阻塞或暂停: - 等待I/O操作结束 - 等待获得一个锁 - 等待从Thread.sleep中唤醒 - 等待另一个线程的计算结果当一个线程阻塞时,他通常被挂起,并被设置为线程阻塞的某个状态。 一个阻塞的操作和一个普通的操作之间的差别仅仅在于:被阻塞的线程必须要等待一个事件的发生才能继续进行,并且这个事件是超越它自己控制的,因为需要

2017-09-19 15:51:55 428

原创 java并发编程day07

5.3 阻塞队列和生产者-消费者模式阻塞队列blockingqueue提供了可阻塞的put和take方法,他们与可定时的offer和pull是等价的。 如果Queue已经满了,put方法会被阻塞直到有空间可用;如果Queue是空的,那么take方法会被 阻塞,直到有元素可用。Queue的长度可以有限,也可以无限;无限的Queue永远不会满,所以它的 put方法永远不会阻塞。阻塞队列支

2017-09-18 16:30:04 468

原创 java并发编程day06

第五章 构建快5.1 同步容器同步容器分为两部分:一个是vector和hashtable,早期是JDK的一部分;另一个是他们的同系容器,在后面被加入到同步封装类,这些类是由Collections.synchronizedXXX工厂方法提供的,这些类通过封装它们的状态,并对每一个公共的方法进行同步实现线程安全,这样一次只有一个线程能访问到容器的状态5.1.1 同步容器中出现的问题同步块都是线程安全的,

2017-09-15 16:43:57 309

原创 java并发编程day05

4.4向已有的线程安全类添加功能缺少即添加操作(检查再运行)这种操作必须是原子的添加一个新原子的最安全的方式是 修改原始的类以支持期望的操作。另一个方法是扩展这个类。 如下代码所示:@TreadSafepublic class BetterVector<E> extends Vector<E> { public synchronized boolean putIfAbsent(E

2017-09-14 11:34:38 323

原创 java并发编程笔记day04

4.3 委托线程安全4.3.1 范例:试用委托的机动车追踪器public class DelegatingVehicleTracker { private final ConcurrentMap<String,Point> locations; private final Map<String,Point> unmodifiableMap; public Delegating

2017-09-08 16:03:14 348

原创 java并发编程笔记day3

第四章 组合对象4.1 设计线程安全的类在没有进行全局检查的情况下,封装能保证线程的安全性。设计线程安全类的过程包括一下三个基本要素:1确认对象的状态由哪些变量构成的2 确定限制状态变量的不变约束3 制定一个管理并发访问对象状态的策略同步策略定义了对象如何协调对其状态的访问,并且不会违反它的不变约束或后验条。4.1.1 收集同步需求维护类的线程安全就意味着确保在并发访问的情况下,保护它的不

2017-09-05 21:25:30 335

原创 java并发编程笔记day2

第三章3.3.2 栈限制栈限制是线程限制的一种特例,只能通过本地变量才可以触及对象。本地变量使对象更容易被限制在线程本地中,本地变量本身就限制在执行线程中,存在于执行线程。其他线程无法访问这个栈。如下面代码所示,我们的numPairs是基本类型的本地变量,无法利用栈限制,由于无法获得基本类似的引用,所以语言语义确保了基本类型本地变量总是线程封闭的。维护对象引用的栈限制,我们就需要确定引用的对象没

2017-09-02 23:12:00 304

原创 java并发编程笔记day1

第三章 共享对象3.1 可见性在没有同步的情况下共享变量,可能会导致一直循环,并且有可能发生重排序,打印结果为0。public class NoVisibility { private static boolean ready; private static int number; private static class ReaderThread extends Thre

2017-08-31 23:45:16 366 1

原创 Spring框架1-容器功能

核心容器(Core)这是Spring框架最基础的部分,它提供了依赖注入(Dependency Injection)特征来实现容器对Bean的管理。这里最基本的概念是BeanFactory,它是任何Spring应用的核心。BeanFactory是工厂模式的一个实现,它使用IoC将应用配置和依赖说明从实际的应用代码中分离出来。 spring的容器中注入各个实例,使得他们在同一个空间,方便。而且是通过x

2016-08-31 14:19:31 2101

原创 javaee:log4j的使用

1、Log4j简介作用: 1、跟踪代码的运行轨迹。 2、输出调试信息三大组成:1、Logger类-生成日志。 2、Appender类-定义日志输出的目的地。 3、Layout类-指定日志输出的格式。2、Logger组件日志共分为5种级别(ON开,OFF关这两个不计算在内),从高到底(从严重到轻微)排序为: FATAL—严重的错误,可能会导致程序不能正常运行. 类似System.exit

2016-08-24 10:01:02 1009

原创 mysql:day7--开源数据库连接池(DBCP/C3P0)、DBUTILS及ext-dbutils扩展包)

DBCP使用dbcp第三方包要导入 三个jar包 使用很简单:1、纯java方式拿dbcp连接池@Test public void testDbcpDemo() throws SQLException{ BasicDataSource pool = new BasicDataSource(); pool.setUsername("root");

2016-08-17 16:01:57 1463

原创 mysql:day6--将数据导出到xls表格

知识点1:数据库元数据操作元数据:描述数据的诗句获取数据库的元信息站在数据库的角度操作 通过DatabaseMetaData dm = con.getMetaData();动态获取数据库名: 相当于执行: show databases;ResultSet rs = dm.getCatalogs();//相当于执行: show databases;知道了数据名,动态获取表名 Resu

2016-08-12 14:47:04 572

原创 mysql:day5-详解多线程状态下的事务(连接池、动态代理技术)

问题:如下面代码: cn.hncu.demo.TxMultiThreadDemopackage cn.hncu.demo;import java.sql.Connection;import java.sql.SQLException;import java.sql.Statement;import cn.hncu.pool.ConnsFactory;import cn.hncu.util.C

2016-08-10 16:10:46 2024

原创 mysql:day4--存储过程、事务处理

小知识点:主键自动增长列:加一个AUTO_INCREMENTunique字段唯一性约束CREATE TABLE test1 ( id INT AUTO_INCREMENT PRIMARY KEY,/*要int类型的才能自动增长*/ nm VARCHAR(32) UNIQUE);INSERT INTO test1 VALUES (1,'小月月');INSERT INTO test1(n

2016-08-08 00:07:09 1397

原创 mysql:day3--java访问数据库、CASE...WHEN、无关/相关子查询、表与表之间的关系

java访问数据库分为四步:1、加载连接器高级版本的mysql可以省略这一步Class.forName("com.mysql.jdbc.Driver");2、建立连接我们最好在建立连接的时候指定编码,这样可以保证执行的时候不会因此乱码。当然也可以采用默认编码方式连接,不过不推荐。//String url = "jdbc:mysql://127.0.0.1:3306/aa";String url =

2016-08-07 17:44:40 809 2

原创 mysql:day2--复杂查询、模糊查询、创建视图、聚合函数

AS 别名SELECT sno AS 编号 FROM sstud;结果显示的表头为‘编号’,但表数据还是用英文,不要用中文。 如图所示: 结果显示图: 表数据图: 复杂查询where 子句 between and 子句和 in子句between and子句SELECT * FROM sstud WHERE age BETWEEN 23 AND 25;执行语句结果如下: in子句SELE

2016-08-06 16:29:20 1918

原创 mysql:day1--sql基础(基本语法及常识)

SQL基础:1、SQL语言都基于SQL92标准,但各数据库之间又存在差异。目前最新的标准为SQL99,它同样兼容SQL92。 2、SQL-Structured Query Language结构化查询语言。 2.1、DDL – 数据定义语言Data Definition Language 建库、建表、设置约束等: create\drop\alter 2.2、D

2016-08-06 02:03:07 1436 1

原创 jsp技术:day5#1-JSTL--Functions标签

要用functions函数库,先要导标签库:<%@taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>演示几个常用的函数,其他的自己看着用就好。<c:set value="hello word,my friend !" var="str"/>fn:indexOf${fn:indexOf(str,"wor") }<br/>

2016-08-01 14:39:47 438

原创 jsp技术:day4--JSTL

JSTL—Core核心标签库(重点掌握)用之前先要导入标签库:<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>重写url:<c:url value="/jsps/jstl.jsp" />c:out 标签注意:用c:out标签输出可以自己设置escapexml属性,是否让浏览器翻译输出,默认是true不翻译。如图: <%

2016-07-31 15:11:12 649

原创 jsp技术:day3#2---初入EL表达式

EL表达式简介EL 全名为Expression Language。EL主要作用: 获取数据: EL表达式主要用于替换JSP页面中的脚本表达式,以从各种类型的java对象中获取数据。 执行运算: 利用EL表达式可以在JSP页面中执行一些基本的关系运算、逻辑运算和算术运算,以在JSP页面中完成一些简单的逻辑运算。 获取web开发常用对象 EL 表达式定义了一些隐式对象,利用这些隐式对象,we

2016-07-30 15:13:30 452

原创 jsp技术:day3#1---JavaBean的使用

1 、jsp:userBean相关声明一个javaBean –new一个javabean对象<jsp:useBean id="user" class="cn.hncu.regServletPojo.domain.User"></jsp:useBean>等价于Java脚本:User user = new cn.hncu.regServletPojo.domain.User()给user对象设置属性

2016-07-30 14:49:17 432

原创 jsp技术:day2--jsp的几个容器、myAjax(隐藏帧技术)底层原理、jsp的三代开发技术

JSP的几个容器容器从小到大:pageContext–>request–>session–>application 这里我们要重点介绍这个pageContext,因为pageContext容器我们没遇到过。 通过pageContext可以很方便的操纵其他容器,如下面代码pageContext.setAttribute("name", "pageContext-name", PageContext

2016-07-29 15:25:35 585

原创 jsp技术:day1--jsp简单用法、静态导入、动态导入、设置errorPage、<jsp:forward>

jsp简介:JSP是Java Server Page的缩写,它是Servlet的扩展,它的作用是简化网站的创建和维护。 JSP是HTML代码与Java代码的混合体。 JSP文件通常以JSP或JSPX的扩展名。 JSP拥有自己的语法。 JSP形式上像HTML,但本质上是Servlet。 JSP的出现,使得将Web开发中的HTML与业务逻辑代码有效分离成为可能。通常JSP只负责生成动态的HTM

2016-07-28 14:17:49 1182

原创 javaEE:day11-用js操纵cookie、session技术

js操纵cookie创建修改一个cookie function write(){ var nm = "张三第"; nm= encodeURI(nm);//如是中文, 编码 var date = new Date(); date.setTime(date.getTime()+1000*60*6

2016-07-27 14:00:32 806

原创 javaEE:day10-Cookie技术

Cookie简介Cookie,是客户端在访问web服务器时,服务器在客户端的机器上存放的信息。 服务器将Cookie保存在客户机器上的原因是为了跟踪客户的状态。这主要用于特殊的场合如电子商务。 JavaServletApi为Cookie提供了简单实现,javax.servlet.http.Cookie类表示Cookie。 Cookie保存客户端的硬盘上,通过key和value值来保存信息,类似

2016-07-26 13:57:10 793

原创 javaEE:day9-request和response的转发、重定向、请求包含小细节

字节输出流和字符输出流的共存问题结论:不能共存(跟get或post方式没关系)。即在同一个servlet中字符流与字节流不能共存,两种方法单独使用都是可以的另外:如果要用字节流输出中文,用write(byte[])方法,因为它的out.print(“晚上好!”);//500错误。内部用iso8859-1读取,已经写死了,因此中文不行转发时,两个servlet都输出信息的问题转发用 Re

2016-07-25 13:31:18 2282

原创 javaEE:day8-在线图片上传与浏览(带图片点击放大、下载、删除、目录打散)

设计思路:用一个值对象封装一个photo信息。photo值对象包括 private String id;// uuid private String realName;// 相片真实文件名(上传时的文件名) private String ext;// 扩展名 private String dir;// 打散后的路径 private String dateTime

2016-07-24 14:35:44 1644

原创 javaEE:day7-上传文件(Apache包)、目录打散、文件上传进度条、纯前台进度条

用Apache工具做文件上传1获得所接受文件要保存的路径String path = getServletContext().getRealPath("/files");2文件上传的临时目录,如不指定则为Tomcat/tempsFile tempDir = new File("d:/a");3创建用于解析文件的工厂类,同时设置缓冲区注意这个类是Apache公司的jar包要导入两个jar包

2016-07-22 22:22:51 1114

原创 javaEE:day6-requset和response用法、表单参数的接受、文件手动上传(简易版)

通过<%=request.getContextPath() %> 可以将项目名写活,这样,即使项目名变了,仍可以运行。request代码每一次请求的容器。浏览器每次请求都是一个新的request对象。因此放在request里面的属性request.getAttribute()是空的,上一个request放的属性request.setAttribute() 是上一个的。与这次无关。但如果是转发的时候,

2016-07-21 14:30:05 1491

原创 javaEE:day5-Servlet的相关类

演示ServletConfig–读取web.xml中的配置获得servlet的初始化的配置参数,有三种方法中:1 getInitParameter("name");2 getServletConfig().getInitParameter("name");3 在不知道参数名称的情况下: Enumeration<String> en = getServletConfig().getInitParame

2016-07-20 23:26:20 683

原创 javaEE:day4-创建Servlet你不能不知道却被忽越的细节、小项目-用户注册(前台转后台再前台)

用继承GenericServlet创建Servlet这种方法创建servlet之后我们要注意一个init的方法细节:适配器模式的一个知识点:适配器中的init(ServletConfig config)中帮我们把它当中的config对象赋值且调用 一个空参的init()。我们以后应该覆盖空参的init()。因为如果覆盖了这个带参数的,那么就无法实现为它的config对象赋值,由此导致其中使用conf

2016-07-19 00:44:10 700

原创 javaEE:day3-servlet生命周期、提交解决中文乱码、tomcat加载jar包或类文件的顺序

servlet生命周期生命周期简介:servlet在服务器第一次被请求的时候new出来,并初始化(即init())再调用service方法。这个实在服务器中new出来,然后用HashMap加的,与客户端无关。客户端之后访问只调用这个servlet的service方法。具体分为4步:1 构造方法 :服务器在被客户端第一次请求的时候运行 仅在服务器中运行一次2 init方法:客户端第一次访问服务

2016-07-18 00:12:53 2367 1

原创 javaEE:day2-Http头协议(doget/dopost)、转发与重定向、gzip压缩

http头协议凡是以超链接登录的都是doget,表单请求可以设置请求头协议:doget、dopostdoget请求,可以直接用url带参数访问页面文件,如:http://127.0.0.1:8080/helloWeb_jun/login.jsp?name=aaa&pwd=123123123而如果在表单中设置了method="post"的话则不能用上面的方式访问,必须是通过超链接点击访问。浏览器的兼容

2016-07-17 16:58:21 1952

原创 Java解析xml文档之STAX解析

STAX是sax的升级版,现主要用于安卓与sax一样,也是用来读的。stax创建XMLReader两步:XMLInputFactory factory = XMLInputFactory.newFactory();//1 XMLEventReader reader = factory.createXMLEventReader( new FileReader("./xml5/users.

2016-07-16 01:04:17 1650

原创 Java解析xml文档之SAX解析

sax解析是一种边读边解析,仅向前读取,不能修改,用来读。sax创建XMLReader三步:SAXParserFactory factory = SAXParserFactory.newInstance(); SAXParser parser = factory.newSAXParser(); XMLReader reader = parser.getXMLReade

2016-07-16 00:59:35 7764

原创 javaEE:day1-验证码生成技术和启动tomcat的四种方式

今天我正式进入了后台JAVAEE–javaweb两个知识点:1. tomcat的运行1. 用myeclipse自带的启动2. 改tomcat的配置文件的host的appBase3. 将项目直接拷进tomcat的webapps文件4. 在catlina文件的主机文件下改动一个docBase2. 验证码的生成验证码的生成用到的是BufferedImage的getGraphics方法然后用得到的Graph

2016-07-16 00:50:26 1056

原创 Java解析xml文档之DOM解析--CRUD(增删改查)

DOM-Document Object Model-文档对像模型。是w3c组织处理xml的一种方式。特点:一次将所有数据全部加载到内存中。 对xml文档中的每一个节点都当成一个Node对像处理。包括元素、文本、属性。 org.w3c.dom包中的Document,Element,Node。 非常方便进行修改。 已经集成在了JDK中,是Sun对xml操作的标准。 缺点是当文档数据量很大时,对

2016-06-29 16:35:49 2735

jredis java连接jar包

jredis java连接jar包

2017-04-10

TortoiseSVN-1.8

TortoiseSVN-1.8

2017-04-07

PLSQL10.0.1.1694最新版+汉化包+注册机

PLSQL10.0.1.1694最新版+汉化包+注册机

2017-04-07

个人书店系统(单机)

充分利用mvc的思想(表现层ui+数据层dao+逻辑层business)以及铁三角模式(实现类+抽象类+工厂类)以及值对象vo 充分学习java的面向对象编程思想 本程序包括:进货模块、管理模块、销售模块、用户模块、库存模块五大功能模块以及登录界面模块

2016-06-20

空空如也

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

TA关注的人

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