自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 springMvc的架构原理

2019-01-12 21:51:30 155

原创 SpringMvc入门程序

创建动态web项目导入jar包配置前端控制器(web.xml中)<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-ins...

2019-01-12 21:32:19 155

原创 SpringMvc简略运行流程

SpringMvc 是一个表现层框架解决,从请求中接收传入的参数,将处理后的结果返回给页面展示。对于Strust2的流程:用户发送请求,核心控制器strutspreparedandExcuteFilter接收后发送给处理器(Action),Action接收参数并传给service,dao然后到数据库,最后再返回给核心控制器。核心控制器发送给jsp页面渲染(tomcat解析),然后再返回给核心控...

2019-01-11 19:38:09 167

原创 Mybatis之原生和代理Dao实现

使用Mybatis开发Dao,通常有两种方法:原始Dao开发方法和Mapper接口开发方法SqlSession的使用范围SqlSession中封装了对数据库的操作:查询、插入、更新、删除等通过SQLSessionFactory创建SqlSession,而SqlSessionFactory是通过SQLSessionFactoryBuilder进行创建SqlSessionFactoryBui...

2019-01-10 13:19:28 252

原创 Mybatis之动态SQL

通过mybatis提供的各种标签方法实现动态SQL拼接映射文件 UserMapper.xml <select id="findUserByUserNameAndSex" parameterType="cn.zst.domain.User" resultType="cn.zst.domain.User"> SELECT * fro

2019-01-10 10:57:20 131

原创 Mybatis之输入映射与输出映射

输入类型(parameterType)传递简单类型(参考Mybatis入门程序)传递POJO对象(Mybatis使用Ognl表达式解析对象字段的值,#{}占位符与拼接符 ${}括号内的值为POJO属性名称)传递POJO包装对象开发中通过POJO传递查询条件,查询条件是综合的查询条件,不仅包括用户查询条件还包括其他的查询条件(如用户购买商品信息或订单号等),这是可以使用包装对象传递输入参...

2019-01-09 17:10:27 290

原创 Mybatis入门程序2

User.xml<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"><!--name

2019-01-09 11:29:52 220

原创 Mybatis入门

Mybatis介绍Mybatis为Apache的一个开源项目,一个持久层的框架。它对jdbc的操作数据库的过程进行封装,使开发人员之关注SQL本身,不需要处理如注册驱动,创建connection,创建statement、手动设置参数,结果集检索等jdbc繁杂的过程代码。Mybatis通过xml或者注解的方式将要执行的各种statement(statement,PreparedStatement...

2019-01-08 10:41:35 109

原创 OGNL表达式中3个符号的使用

#号的用法获取ContextMap中的数据<s:property value="#request.name"/><s:property value='#session.name'/><s:property value='#application.name'><s:property value='#parameters.id'>&lt...

2018-12-19 19:27:15 228

原创 Strust2之值栈的创建和ActionContext对象的关系

值栈对象的创建,ValueStack和ActionContext的关系值栈对象是请求时创建的ActionContext是绑定到当前的线程上,那么在每个拦截器或者Action中获取到的ActionContext是同一个。ActionContext中存在一个Map集合,该map集合和ValueStack的ContextMap是同一个地址ActionContext中可以获取到ValueStac...

2018-12-18 21:37:11 236

原创 Struts2之值栈

值栈概述值栈就相当于Struts2框架的数据的中转站,向值栈存入一些数据,从值栈中获取到数据ValueStack是struts2提供一个接口,实现类OgnlValueStack—值栈对象(OGNL是从值栈中获取数据的)Action是多例的,有一起请求,创建Action实例,创建一个ActionContext对象,代表的是Action的上下文对象,还会创建一个ValueStack对象每个...

2018-12-18 16:56:58 118

原创 Struts2之OGNL表达式概述

OGNL表达式概述Struts2框架中使用OGNL表达式OGNL 是Object Graphic Navigation Language(对象图导航语言)的缩写所谓对象图,即以任意一个对象为根,通过OGNL可以访问与 这个对象关联的其他对象通过它简单一致的表达式语法,可以存取对象的任意属性,调用对象的方法,遍历整个对象的结构图,实现字段类型转化等功能,它使用相同的表达式取存取对象的属性...

2018-12-18 11:17:03 130

原创 Struts2之自定义拦截器和配置

编写拦截器,需要实现Interceptor接口,实现接口中的三个方法interceptor接口有很多的实现类,编写最简单的方式就是继承AbstractInterceptor实现类代码如下public String intercept(ActionInvocation invocation) throws Exception{ User user = (User) ServletAc...

2018-12-17 20:28:02 212

原创 Struts2的拦截器

拦截器概述拦截器就是AOP(Aspect-Oriented Programming)的一种实现,(AOP是指用于在某个方法或字段呗访问之前,进行拦截然后在之前或之后加入某些操作)过滤器:过滤从客户端发送到服务器端的请求拦截器:拦截对目标Action中的某些方法进行拦截拦截器不能拦截JSP拦截到Action中的某些方法拦截器与过滤器的区别拦截器是基于Java反射机制的,而过...

2018-12-16 16:05:39 111

原创 Struts2之把数据封装到集合中

封装复杂类型的参数(集合类型 Collection,Map接口等)需求:页面中有可能想批量添加一些数据,就使用该技术。把数据封装到集合中把数据封装到Collection中因为Collection接口都会有下标值,所有页面的写法会有一些区别,注意:<input type="text" name="products[0].name"/>Action中的写法,需要提供produ...

2018-12-16 11:18:58 218

原创 Struts2之数据封装

数据封装的原因作为MVC框架,必须要负责解析HTTP请求参数,并将其封装到Model对象中封装数据为开发提供了很多方便struts2框架提供了很强大的数据封装功能,不再需要使用Servlet的API完成手动的封装Struts2中提供了两类数据封装的方式第一种方式:属性封装提供对应属性的set方法进行数据的封装表单的哪些属性需要封装数据,就那么在对应的Action类中提供该属性...

2018-12-15 16:11:01 240

原创 Struts2之结果页面的跳转

结果页面存在两种方式全局结果页面条件:如果<package>包中的一些action都返回success,并且返回的页面都是同一个JSP页面,这样就可以配置全局的结果类型全局结果页面针对的当前的包中的所有的Action,但是如果局部还有结果页面,会优先局部的,使用的标签是:<global-results> <result&amp

2018-12-14 20:25:49 174

原创 Struts2框架中使用Servlet的API

完全解耦合方式(ActionContext)<!--demo1.jsp--><h3>演示Servlet的API的第一种方式(完全解耦合方式)</h3><form action = "${pageContext.request.contextPath}/demo1Action.action" method="post"> 姓名:<i

2018-12-14 19:27:10 127

原创 Struts2访问方式之统配符和动态访问

通配符方式public class LinkmanAction extends ActionSupport{ public String save(){ System.out.println("保存联系人。。。"); return "saveOk"; } public String delete(){ System.out....

2018-12-13 16:34:22 159

原创 Struts2之Action的访问之传统方式

public class CustomerAction extends ActionSupport { public String save(){ System.out.println("保存了客户"); return null; } public String delete(){ System.out.println("删...

2018-12-12 21:31:53 103

原创 Struts2之Action类的三种编写方式

Action类的三种编写方式Action 类就是一个pojo类(Plain Ordinary Java Object)简单的java对象,没有继承某个类,没有实现接口,就是POJO类Action类可以实现Action接口Action接口中定义了5种视窗中常用的常量,常量的值对应的是5个逻辑视窗跳转页面(跳转的页面需要自己来配置),还定义了一个方法,execute方法** ER...

2018-12-12 21:13:17 913

原创 Struts2之常量的编写

上述default.properties的struts.action.extention=action,,的常量表示的含义,页面中访问的/hello.action的后缀名,(要么不写后缀名 /hello ,要么只能写.action的后缀名,不能写成像.do 之类的)如果要修改后缀名,可以复制常量struts.action.extention,在struts.xml中修改<st...

2018-12-12 19:02:26 143 1

原创 Struts2之struts.xml配置文件的配置

<package>标签,如果要配置Action的标签,那么必须要先配置<package>标签,代表的包的概念包的属性** name----包的名称,要求是唯一的,管理action配置** extends—继续,可以继承其他的包,只要继承了,那么该包就包含了其他包的功能,一般都是继承struts-default** namespace----名称空间,一般与&lt...

2018-12-12 17:09:14 88

原创 Struts2之配置文件的加载的顺序

掌握:加载的配置文件的名称,位置和作用Struts2框架的核心是StrutsPrepareAndException过滤器,该过滤器有两个功能Prepare-----预处理,加载核心的配置文件Execute----执行,让部分拦截器执行StrutsPrepareAndException 加载的配置文件通过源代码可以看到具体加载的配置文件和加载配置文件的顺序** i...

2018-12-12 15:59:12 186

原创 Struts2之入门

Struts2以Webwork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开,所以Struts2可以理解为Webwork的更新产品。Struts2是一个基于MVC设计模式的Web层框架。MVC 和JavaEE的三层结构MVC设计模式,是由一些网站的开发人员提出来的JavaEE三层结构:SUN公司为EE开发划分的结构环境...

2018-12-11 20:59:21 97

原创 Hibernate之在set标签上配置策略

在<set>标签上使用fetch和lazy属性fetch 的取值 ----------控制SQL语句生成的格式select ----------默认值,发送查询语句join -------------- 连接查询,发送的是一条迫切左外连接,配置了join.lazy就失效subselect --------子查询,发送一条子查询查询其关联对象(需要使用list...

2018-12-10 19:35:10 377

原创 Hibernate之延迟加载

延迟加载延迟加载先获取到代理对象,当真正使用到该对象中的属性的时候,才会发送SQL语句,是HIbernate框架提升性能的方式。类级别的延迟加载session 对象的load方法默认就是延迟加载Customer c = session.load(Customer.class ,1L),没有发送SQL语句。当使用该对象的属性时,才发送SQL语句。使类级别的延迟加载失效。在<cl...

2018-12-09 20:41:43 760

原创 Hibernate之HQL多表查询

多表的查询进行使用HQL语句进行查询,HQL语句和SQL语句的查询语法比较类似内连接查询显示内连接select * from customer c inner join orders o on c.cid = o.cno隐式内连接select * from customers c.orders o where c.cid = o.cno;外连接查询左连接查询...

2018-10-25 20:35:00 5332

原创 Hibernate框架查询方式之QBC查询

QBC(Query By Criteria)检索方式简单查询,使用的是Criteria接口List<Customer> list = session.createCriteria(Customer.class).list();for(Customer customer : list){ System.out.println(customer);}排序查询需要使用add...

2018-10-23 20:12:17 224

原创 Hibernate的查询方式

Hibernate框架的查询方式唯一标识OID的检索方式session.get(对象.class,OID)对象的导航的方式new User().getRole().getRname()HQL的检索方式Hibernate Query Language-----Hibernate的查询语言QBC的检索方式Query By Criteria----条件查询SQ...

2018-10-20 15:00:29 106

原创 Hibernate的关联关系映射之多对多映射

JavaBean的编写public class User { private Long userid; private String username; private String password; //编写都是集合 private Set<Role> roles = new HashSet<Role>(); pub...

2018-10-19 21:49:12 90

原创 Hibernate的关联关系映射之一对多映射

JavaWEB中一对多的设计及建表原则导入SQL的建表语句创建数据库:create database hibernate_day03编写客户和联系人的JavaBean程序(注意一对多的编写规则)客户的JavaBean如下public class Customer { private Long cust_id; private String cust_name; p...

2018-10-18 14:22:58 423 3

原创 Hibernate框架的查询方式

Query查询接口具体的查询代码如下查询所有记录Query query = session.createQuery("from Customer");List<Customer> list = query.list();System.out.println(list);条件查询Query query =

2018-10-03 21:38:03 101

原创 Hibernate中的事务与并发

事务的相关概念什么是事务事务是逻辑上的一组操作,组成事务的各个执行单元,操作要么全都成功,要么全部失败转账的例子:小王给小李转钱,扣钱,加钱,两个操作组成了一个事务###事务的特性原子性------事务的不可分割一致性----事务执行的前后数据的完整性保持一致隔离性-----一个事务执行的过程中,不应该受到其他的事务的干扰持久性----事务一旦提交,数据就永久...

2018-10-03 14:48:40 332

原创 Hibernate之一级缓存

Session对象的一级缓存什么是缓存就是一块内存空间,将数据源(数据库或文件)中的数据存放到缓存中,再次获取的时候,直接从缓存中获取,可以提升程序的性能。hibernate框架提供了两种缓存一级缓存----自带的不可卸载的,一级缓存的生命周期与session一致,一级缓存称为session级别的缓存。二级缓存----默认没有开启,需要手动配置才可以使用的,二级缓存可以在多个...

2018-09-30 20:12:32 72

原创 Hibernate持久化对象的状态

持久化对象的状态Hibernate的持久化类持久化类:Java类与数据库的某个表建立了映射关系,这个类就称为是持久化类持久化类 = Java类 + hbm的配置文件Hibernate的持久化类的状态Hibernate 为了管理持久化类:将持久化类分成了三个状态瞬时态:Transient Object没有持久化标识OID,没有被纳入到Session对象的管理...

2018-09-30 15:57:46 122

原创 hibernate之持久化类和代理主键

Hibernate的持久化类持久化类:就是一个java类(编写的JavaBean),这个java类与表建立了映射关系就可以成为是持久化类。* 持久化类=JavaBean + xxx.hbm.xml持久化类的编写规则提供一个无参数 public 访问控制符的构造器-----底层需要进行反射提供一个标识属性,映射数据表主键字段------唯一标识OID,数据库中通过主键,J...

2018-09-29 18:50:12 268

原创 Spring框架的事务管理

Spring框架的事务管理相关的类和API PlatformTransactionManager接口 平台事务管理器。(真正管理事务的类)。该接口有具体的实现类,根据不同的持久层框架,需要选择不同的实现类。 TransactionDefinition接口 事务定义信息(事务的隔离级别,传播行为,超时,只读) TransactionStatus接口 事务的状态...

2018-08-09 16:01:43 194

原创 Spring之JDBC的模板类入门

public class Demo1 { @Test public void run(){ //Spring框架提供了内置了连接池,不想使用内置,整合其他的连接池 DriverManagerDataSource dataSource = new DriverManagerDataSource(); dataSource.setD...

2018-08-08 21:23:07 293

原创 Spring之AOP的注解方式

步骤一:创建Javaweb项目,引入具体的开发的jar包 先引入Spring框架开发的基本开发包 再引入Spring框架的AOP的开发包 Spring的传统AOP的开发的包 Spring-aop-4.2.4RELEASE.jar com.springsource.org.aopalliance-1.0.0.jar aspectJ的开发包 com.s...

2018-08-08 13:28:11 129

空空如也

空空如也

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

TA关注的人

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