自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(55)
  • 收藏
  • 关注

原创 Mybatis入门(二)

 一、数据模型分析思路1、每张表记录的内容      分模块对每张表的内容进行熟悉,相当于学习系统需求(功能)的过程;2、每张表的重要字段      非空字段、外键字段3、数据库级别表与表之间的外键关系4、数据库级别表与表之间的业务关系      一定是建立在业务意义的基础上;      先分析数据库级别有关联的表间的业务关系;      再分析数据库级别没...

2018-11-13 08:33:42 241

原创 IntelliJ IDEA创建Web项目

一、概念IntelliJ IDEA中的"New Project"相当于eclipse中的Workspace工作空间;而"New Module"相当于eclipse中的Project工程。二、创建Web项目2.1、创建ProjectFile -> New -> Project...选择Empty Project项目输入项目名称,选择项目路径2.2、...

2018-10-30 07:19:29 395

原创 SpringMVC入门(一)

一、SpringMVC框架1.1、什么是SpringMVCSpringMVC是基于MVC的web层框架;SpringMVC是Spring框架的一个模块;1.2、MVC在B/S系统下的应用1.3、SpringMVC框架1、用户发送请求到前端控制器(DispatcherServlet)2、前端控制器请求HandlerMapping查找Handler根据请求的ur...

2018-10-18 08:10:32 227

原创 Mybatis入门(一)

目录一、原生态JDBC程序中的问题二、Mybatis框架(一)概念(二)原理三、入门程序(一)根据用户id查询用户信息(二)根据用户名模糊查询用户信息(三)添加用户返回自增主键返回非自增主键(四)删除用户(五)更新用户(六)总结四、Mybatis开发DAO的操作4.1、SqlSession使用范围4.2、原始开发方法(DAO接口和实现...

2018-09-10 21:59:52 699

原创 Spring入门(三)

目录一、Spring的AOP操作使用Aspectj实现AOP的操作(基于注解)二、Spring的jdbcTemplate操作数据库三、Spring配置C3P0连接池四、Spring的事务管理(一)概念(二)Spring事务管理API(三)声明式事务管理(基于xml)模拟转账场景(四)声明式事务管理(基于注解)一、Spring的AOP操作Aspectj...

2018-09-05 08:01:15 257

原创 Hibernate入门(一)

一、JavaEE三层架构web表现层 service业务层 dao持久层二、三大框架struts2表现层框架 hibernate持久层框架(只能操作数据库) spring综合类框架三、MVC思想(表现层的设计模式)m:模型 v:视图 c:控制器四、概念(一)Hibernatehibernate是轻量级、企业级的开源框架。hibernate底层对JDBC进行...

2018-09-03 08:33:30 189

原创 Spring入门(二)

目录一、Spring管理Bean(基于注解)1.1、Bean实例化(一)注解创建对象(二)注解注入对象类型属性(@Autowired、@Resource)(三)配置文件创建对象、注解注入属性二、AOP面向切面编程(一)AOP底层原理(二)AOP术语(三)Spring的AOP操作Aspectj实现AOP(基于xml配置文件)附:一、项目结构二、po...

2018-08-23 08:07:21 175

原创 Spring入门(一)

目录一、概念二、IOC实现原理三、Spring管理Bean(基于xml配置文件)3.1、Bean实例化(一)无参构造创建对象(二)静态工厂创建对象(三)实例工厂创建对象3.2、Bean标签常用属性3.3、Spring属性注入(一)set方法注入属性(二)有参构造注入属性3.4、Spring注入对象类型属性附:一、项目结构二、pom文件...

2018-08-20 22:45:51 219

原创 windows环境测试mapreduce程序之环境配置

场景描述:在windows环境中开发mapreduce程序并在本地测试运行时,出现下述错误提示:Exception in thread "main" java.lang.UnsatisfiedLinkError: org.apache.hadoop.util.NativeCrc32.nativeComputeChunkedSumsByteArray(II[BI[BIILjava/lang/Stri...

2018-04-25 15:15:00 628

原创 Hadoop分布式文件系统-HDFS

Hadoop分布式文件系统-HDFS一、Hadoop概述1.  Google集群系统Hadoop是Google集群系统的开源实现    (1)Google集群系统:GFS、MapReduce、BigTable    (2)Hadoop:HDFS、MapReduce、HBaseHadoop的初衷是解决Nutch海量数据的爬取和存储Hadoop于2005年作为Lucene子...

2018-04-23 16:49:46 4616

原创 windows下修改mysql的字符编码

windows 10系统 + MySQL Server 5.5 首先进入到mysql的安装目录中mysql的默认编码方式为latin1,使用EditPlus工具打开my.ini文件,并修改如下选项。修改后保存文件,并在系统的服务中重启mysql服务。测试修改是否成功:在mysql的命令行输入命令:show variables like "%char%";如果出现如下图所示,则表示修改成功。...

2018-04-21 10:18:13 4283

原创 win10配置tomcat

本文针对tomcat的解压版!使用的版本为Tomcat 7.0 !将下载的安装包解压到本地的安装目录。以前的版本需要配置系统的环境变量,在tomcat 7.0之后的版本不再需要配置(原因如下)。使用editplus打开startup.bat。意味着如果bin目录下存在catalina.bat文件即可访问tomcat页面。启动tomcat后,打开浏览器,输入localhost:8080后看到如下页面...

2018-04-21 10:02:17 1644

原创 IDEA批量修改变量名称

刚刚使用IDEA不久,遇到一个简单的问题:定义了一个方法,并在很多的地方都有调用,而现想要修改该函数名。即一次性批量修改变量名称。尝试在定义的函数名上进行rename操作,结果所有原来的名称都自动同步过来了。

2018-02-07 09:12:55 16650

原创 Tomcat配置JNDI数据源

步骤:一、拷贝数据库驱动到 Tomcat安装目录的lib下。二、配置context.xml文件(两种方法)方法一:使用Tomcat的context.xml文件方法二:在应用中(WebRoot目录的META-INF目录下)新建context.xml文件进行配置三、在应用中配置web.xml(不是必须的)四、使用数据源连接数据库

2016-05-24 15:58:10 651

原创 设计模式之原型模式(Prototype)

原型模式虽然是创建型模式,但是与工厂模式没有关系。该模式的思想:是将一个对象作为原型,对其进行复制、克隆,产生一个和原对象类似的新对象。创建一个原型类:package com.usst.chicago;public class Prototype implements Cloneable { public Object clone() throws CloneNotSupport

2016-05-12 23:16:04 448

原创 设计模式之建造者模式(Builder)

工厂类模式提供的时创建单个类的模式,而建造者模式则是将各种产品集中起来进行管理,用来创建复合对象,所谓复合对象就是指某个类具有不同的属性。其实,建造者模式就是前面抽象工厂模式和最后Test的结合。一个接口:package com.usst.chicago;public interface Sender { public void send();}两个是实现类:packag

2016-05-12 18:21:26 391

原创 设计模式之工厂方法模式(Factory Method)

一、普通工厂模式:建立一个工厂类,对实现了同一接口的一些类进行实例的创建。创建共同接口:package com.usst.chicago;public interface Sender { public void send();}创建实现类:package com.usst.chicago;public class MailSender implements Se

2016-05-12 18:03:57 348

原创 设计模式之抽象工厂模式(Abstract Factory)

工厂方法模式有一个问题:类的创建以来工厂类。也就是说,如果想要扩展程序,必须对工厂类进行修改,这违背了闭包原则。所以,从设计角度考虑,有一定的问题。如何解决呢?用到抽象工厂模式,创建多个工厂类。这样一旦需要增加新的功能,直接增加新的工厂类就可以了,不需要修改之前的代码。定义接口:package com.usst.chicago;public interface Sender {

2016-05-12 17:03:30 384

原创 设计模式之单例设计模式(Singleton)

单例对象(Singleton)是一种常用的设计模式。在Java应用中,单例对象能保证在一个JVM中只有一个对象实例存在。好处:1)某些类创建比较繁琐,对于一些大型的对象,这是一笔很大的系统开销。2)省去new操作符,降低了系统内存的使用频率,减轻GC压力。package com.usst.chicago;public class Singleton { //私有静态实例,防止

2016-05-11 13:10:08 395

原创 Java中23种设计模式简介

设计模式有三种类型,分别为创建型、结构型、行为型。(一)创建型1)Singleton,单例模式:一个类只有一个实例,提供了一个访问它的全局变量。2)Abstract Factory,抽象工厂:提供一个创建一系列相关或相互依赖对象的接口,无须指定具体的类。3)Factory Method,工厂方法:提供一个创建对象的接口,让子类决定实例化哪一个类。Factory Method使一个类

2016-05-05 16:26:12 516

原创 设计模式之Iterator(三)

容器中泛型的使用,取出更方便(不用转型)package com.awiatech.iterator.generic;public class GenericArrayList { Object[] objects = new Object[10]; // 定义一个长度为10的数组 int index = 0; // 数组索引指向 /** * 数组中添加元素 * @para

2016-04-27 23:05:48 273

原创 设计模式之Iterator(二)

在上一节的基础上,考虑遍历容器package com.awiatech.iterator;import com.awiatech.iterator.ArrayList;import com.awiatech.iterator.LinkedList;/** * 测试类用于测试容器的功能。 * @author Chicago * */public class Test {

2016-04-27 22:26:17 349

原创 设计模式之Iterator(一)

实现动态添加对象的容器。实现一:手动编写ArrayListpackage com.awiatech.iterator;/** * 一个动态添加对象的容器,底层使用数组模拟。 * 与数组相比的好处:不用考虑数组的边界问题,可以动态扩展。 * @author Chicago * */public class ArrayList { Object[] objects

2016-04-27 13:29:51 289

原创 String.split()用法

在java.lang包中有String.split()方法,返回是一个数组1、如果用“.”作为分隔的话,必须是如下写法:String.split("\\."),这样才能正确的分隔开,不能用String.split(".");2、如果用“|”作为分隔的话,必须是如下写法:String.split("\\|"),这样才能正确的分隔开,不能用String.split("|");“.”和“|”

2016-04-22 18:45:40 1166 1

原创 SwingUtilities.invokeLater()和SwingUtilities.invokeAndWait()的区别

invokeAndWait:后面的程序必须等这个线程(参数中的线程)执行完才能执行invokeLater:后面的程序和这个参数的线程对象可以并行,异步地执行invokeLater一般用于在线程里修改swing组件的外观,因为swing组件是非同步的,所以不能在线程中直接修改,会不同步,得不到期望的效果,所以要把修改外观的代码放在一个单独的线程中,交给invokeLater:后面的程序和这个

2016-04-22 18:19:01 3640

原创 Java设置GUI的窗口图标

思路:JFrame类中的setIconImage()方法获取Image对象的实例方法方法一:ImageIcon类的getImage()方法ImageIcon icon = new ImageIcon(图片路径);setIconImage(icon.getImage());方法二:Toolkit类的getImage()方法Toolkit toolkit = Toolkit.

2016-04-17 22:25:14 7547 2

原创 Java多线程(一)

1、进程和线程的概念进程:运行中的应用程序称为进程,拥有系统资源(cpu、内存)线程:进程中的一段代码,一个进程中可以有多段代码。本身不拥有资源(共享所在进程的资源)在Java中,程序入口被自动创建为主线程,在主线程中可以创建多个子线程。区别: 1、是否占有资源问题 2、创建或撤销一个进程所需要的开销比创建或撤销一个线程所需要的开销大 3、进程为重量级组件,线程为轻

2016-04-13 23:29:17 331

转载 Java加载和解析XML文件的两种方法

对于Java来说,加载和解析XML文件有两种方法:一种:通过加载整个XML文件生成Document文档,然后解析Document文档内容的树和根。另一种:利用SAX封装类来逐步解析。这两种方法各有优点和缺点:第一种由于需要加载整个XML文件生成Document,在解析,所以假如XML文件内容过多、过大,就会造成加载延迟,缓慢(所以此方法只适用于XML文件比较小点 的XML文件);而第二

2016-04-11 23:07:22 1771

原创 java.util.logging.Logger中log()

public void log(Level level, String msg, Throwable thrown)记录带有相关的可抛出信息的消息。 如果当前对于给定的消息级别而言 logger 是启用的,那么将给定的参数存储在 LogRecord 中,而 LogRecord 则被转发到所有已注册的输出处理程序。注意,

2016-04-11 14:30:26 512

转载 java.util.logging.Logger基础教程

从JDK1.4开始即引入与日志相关的类java.util.logging.Logger,但由于Log4J的存在,一直未能广泛使用。综合网上各类说法,大致认为:    (1)Logger:适用于小型系统,当日志量过大时性能有待提升。好处在于JDK集成了此类,无需引入新包。且性能也在逐步改善当中,我认为一般而言,使用Logger即可。     (2)Log4J:并发性较好,性能较强,适用于大型

2016-04-11 14:27:52 398

原创 java.util.logging.Logger使用详解

java.util.logging.Logger不是什么新鲜东西了,1.4就有了,可是因为log4j的存在,这个logger一直沉默着,其实在一些测试性的代码中,jdk自带的logger比log4j更方便。 一、创建Logger对象 static Logger getLogger(String name)           为指定子系统查找或创建一个 logger。 st

2016-04-11 14:23:47 908

原创 JScrollPane自动乡下滚动

public void setUpdatePolicy(int policy)设置文档更新时的插入符移动策略。通常,当在插入符位置之前或当前位置插入时,以及在插入符位置之前删除时,插入符会更新其在文档中的绝对位置。这里的“绝对位置”指的是相对于文档开头的位置。例如,在一个可编辑的文本组件中输入一个字符时,它将插入到插入符位置,而插入符由于此插入将移动到文档中下一个绝对位置,如果输入的是BA

2016-04-11 12:58:47 623

转载 关于Class.getResource和ClassLoader.getResource的路径问题

Java中取资源时,经常用到Class.getResource和ClassLoader.getResource,这里来看看他们在取资源文件时候的路径问题。Class.getResource(String path)path不以’/'开头时,默认是从此类所在的包下取资源;path 以’/'开头时,则是从ClassPath根下获取;什么意思呢?看下面这段代码的输出结果就明白了:

2016-04-11 12:23:09 333

转载 java.awt.EventQueue.invokeLater(new Runnable(){public void run(){}})(三)

把这个事件(new Runnable(设置计算器可见))添加到awt的事件处理线程当中去awt的事件处理线程会按照队列的顺序依次调用每个待处理的事件来运行 使用该方式的原因是:awt是单线程模式的,所有awt的组件只能在(推荐方式)事件处理线程中访问,从而保证组件状态的可确定性。

2016-04-11 12:19:24 1682

原创 java.awt.EventQueue.invokeLater(new Runnable(){public void run(){}})(一)

public class EventQueueextends ObjectEventQueue 是一个与平台无关的类,它将来自于底层同位体类和受信任的应用程序类的事件列入队列。  它封装了异步事件指派机制,该机制从队列中提取事件,然后通过对此 EventQueue 调用 dispatchEvent(AWTEvent) 方法来指派这些事件(事件作为参数被指派)。该机制的特殊行为是与实现有关的

2016-04-11 12:18:10 2216

转载 Java GUI:图形用户界面三剑客相比拼

进行Java GUI(Graphical User Interface,图形用户界面)编程,大家或许经常徘徊在SWT/JFACE, Swing, AWT之间选择,哪一个更合适自己?AWT作为Java语言的第一个GUI类库包,在这三者之间中年龄最长,可谓开国元勋;老二Swing,兼容AWT,同时又对AWT进行了改进,可谓站在前辈的肩膀上,自然就会看的远了;老三SWT/JFace,则只能用不走寻常路来

2016-04-11 12:16:24 17071 1

原创 Java的getClass()

Java反射学习    所谓反射,可以理解为在运行时期获取对象类型信息的操作。传统的编程方法要求程序员在编译阶段决定使用的类型,但是在反射的帮助下,编程人员可以动态获取这些信息,从而编写更加具有可移植性的代码。严格地说,反射并非编程语言的特性,因为在任何一种语言都可以实现反射机制,但是如果编程语言本身支持反射,那么反射的实现就会方便很多。1,获得类型类    我们知道在Java中一切都

2016-04-11 12:14:26 340

原创 Java的getClass()

JAVA反射机制JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。Java反射机制主要提供了以下功能: 在运行时判断任意一个对象所属的类;在运行时构造任意一个类的对象;在运行时判断任意一个类所具有的成员变量和方法;在运行时调用任意一个对象的

2016-04-11 12:10:29 366

原创 Java的setLocationRelativeTo()

public void setLocationRelativeTo(Component c)设置窗口相对于指定组件的位置。 如果组件当前未显示或者 c 为 null,则此窗口将置于屏幕的中央。中点可以使用 GraphicsEnvironment.getCenterPoint 确定。

2016-04-11 11:41:20 57429 3

原创 Java中的setResizable()

public void setResizable(boolean resizable)设置此窗体是否可由用户调整大小。 参数为boolean类型:resizeable值为true时,表示生成的窗体可以自由改变大小;resizeable值为false时,表示生成的窗体大小是由程序员决定的,用户不可以自由改变该窗体的大小。

2016-04-11 11:35:10 24727

空空如也

空空如也

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

TA关注的人

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