Java进阶知识23 Spring对JDBC的支持】的更多相关文章

1.最主要的代码 Spring 配置文件(beans.xml) <!-- 连接池 --> <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"> <!-- 注册驱动 --> <property name="driverClass" value="com.mysql.jdbc.Driver">…
1.SSH各个的职责 Struts2:是web框架(管理jsp.action.actionform等).Hibernate:是ORM框架,处于持久层.Spring:是一个容器框架,用于配置bean,并维护bean直接的关系.             Bean(组件):java中任何一种对象,如 javabean(domin.entity.POJO.POVO).数据源.dao.service.action等                       比如:User.数据表user.UserDao…
本文知识点(目录): 1.概念  2.代理模式      2.1.静态代理      2.2.动态代理      2.3.Cglib子类代理 1.概念 1.工厂模式  2. 单例模式 代理(Proxy):是一种设计模式, 提供了 对目标对象的另外一种访问方式:即通过代理来访问目标对象*(好比:某位商家去找某个明星来代言他的产品,这位商家得先去找这位明星的经纪人).  这样好处:可以在目标对象实现的基础上,增强额外的功能操作,也就是扩展目标对象的功能,过滤等.[用户------->代理------…
1.概述 1.1.Spring与Hibernate整合关键点 1) Hibernate的SessionFactory对象交给Spring创建.    2) hibernate事务交给spring的声明式事务管理. 1.2.所用到的jar包 2.整合实例(三种方法,推荐使用第三种) 2.1.第一种方式:Spring 配置文件,直接加载 hibernate.cfg.xml 配置文件的方式 User 实体类 package com.shore.entity; /** * @author DSHORE/…
1.事务控制概述   1.1.编程式事务控制         自己手动控制事务,就叫做编程式事务控制.         Jdbc代码: connection.setAutoCommit(false);  // 设置手动控制事务         Hibernate代码: session.beginTransaction();   // 开启一个事务                                transaction.rollback();  //事务回滚       [细粒度的事…
本文知识点(目录): 1.创建细节         1) 对象创建: 单例/多例         2) 什么时候创建?         3)是否延迟创建(懒加载)         4) 创建对象之后,初始化/销毁     2.创建方式           2.1.默认无参构造器         2.2.带参构造器(有两种方式,第一种:一个实体类:第二种:两个实体类合为一个[嵌套])         2.3.工厂类创建对象(两种:一个是工厂实体类,另一个是工厂实体类内部的静态方法)     3.附…
1.概述   切入点(execution ):可以对指定的方法进行拦截,从而给指定的类生成代理对象.(拦截谁,就是在谁那里切入指定的程序/方法) 格式: execution(modifiers-pattern? ret-type-pattern declaring-type-pattern? name-pattern(param-pattern) throws-pattern?) 参数解析: modifiers-pattern?:指定方法的修饰符,支持通配符,该部分可以省略.(public/pr…
1.概述 Aop:(Aspect Oriented Programming)面向切面编程          功能: 让关注点代码与业务代码分离! 关注点:重复代码就叫做关注点:切面: 关注点形成的类,就叫切面(类)!            面向切面编程,就是指对很多功能都有的重复的代码抽取,再在运行的时候往业务方法上动态植入“切面类代码”.切入点:执行目标对象方法,动态植入切面代码.               可以通过切入点表达式,指定拦截哪些类的哪些方法:给指定的类在运行的时候植入切面类代码…
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/…
1.直接得到 IOC 容器对象 ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml"); 封装起来: public class ApplicationContextUtil { private static ApplicationContext applicationContext = null; public ApplicationCont…
1.Spring对JDBC整合支持 Spring对DAO提供哪些支持 1)Spring对DAO异常提供统一处理 2)Spring对DAO编写提供支持的抽象类 3)提高编程效率,减少DAO编码量 Spring对DAO的异常支持 Spring把特定某种技术的异常,如SQLException,统一转化为自己的异常,异常以DataAccessException为父类, 它封装了原始的异常对象,不会丢失原始的错误信息, DataAccessException继承于RuntimeException,是非检查…
1.Spring对JDBC的支持 DAO : Spring中对数据访问对象(DAO)的支持旨在简化Spring与数据访问技术的操作,使JDBC.Hibernate.JPA和JDO等采用统一的方式访问 Spring提供了@Repository注解,这一注解同样允许组件扫描来发现和配置自定义DAO而DAO的实现依赖于某个持久化源,比如一个基于JDBC的DAO需要一个数据源DataSource JdbcTemplate JdbcTemplate类是Spring对JDBC支持类库中的核心类JdbcTem…
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 -----------------------------------------------------------------------------------------------------------------…
Spring对数据库的操作,使用JdbcTemplate对象 需要引入相关的jar文件 如版本:(Spring核心jar包就不列了) spring-jdbc-3.2.5.RELEASE.jar spring-tx-3.2.5.RELEASE.jar C3P0连接池:c3p0-0.9.1.2.jar 数据库驱动包:mysql-connector-java-5.1.22-bin.jar 例:(对象的获取及注入通过spring来实现) 核心jdbc操作 package test.jdbc; impor…
Spring对jdbc技术提供了很好的支持. 体现在: 1)Spring对c3p连接池的支持很完善: 2)Spring对jdbc提供了JdbcTemplate,来简化jdbc操作: 1.使用步骤 1)引入jar文件 spring-jdbc-3.2.5.RELEASE.jar spring-tx-3.2.5.RELEASE.jar c3p0连接池包 数据库驱动包 2) 容器创建DataSource对象 <?xml version="1.0" encoding="UTF-8…
第一节: 工程结构: 1)student.java: package com.cy.model; public class Student { private int id; private String name; private int age; public Student() { super(); // TODO Auto-generated constructor stub } public Student(String name, int age) { super(); this.n…
目录 一.jdbc的简介 二.jdbcTemplate 的使用 2.1 maven 引入spring - jdbc ,c3p0 ,数据库mysql驱动 2.2 配置 数据源以及jdbcTemplate 2.3 数据库表结构 2.4 测试使用 三.jdbc使用具名参数 四.简化JdbcTemplate: 扩展 JdbcDaoSupport (不推荐) 一.jdbc的简介 为了使 JDBC 更加易于使用, Spring 在 JDBC API 上定义了一个抽象层, 以此建立一个 JDBC 存取框架.…
1.我用到的jar包 2.整合实例 2.1.数据库建表语句 create database school; -- 创建数据库 use school; -- 使用school数据库 create table user( -- 创建user表 id ) primary key auto_increment, name ) not null, age ) not null ); ); 2.2.配置web.xml文件 <?xml version="1.0" encoding="…
1.概述 1.Spring负责对象创建  2.Struts2负责用Action处理请求  3.整合的关键点:让Struts2框架Action对象的创建交给Spring完成. 2.整合实例 需要用到的 jar包    Spring的配置文件(aaa-bbb.xml)建议分层,方便维护. 配置web.xml文件 <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5"…
1.简单概述 1.1. 1) SQL:面向的是数据库 select * from tableName;2) HQL查询(Hibernate Query language): hibernate 提供的面向对象的查询语言.    例:Session.createQuery(“from tableName”)  //和第1)点的SQL语句恒等的,查询出来的效果是一样的3) Criteria 查询,完全面向对象的查询(Query By Criteria  ,QBC)4) SQLQuery, 本地SQL…
1.Annotation 注解版 1.1.应用场景(Student-Teacher):当学生知道有哪些老师教,老师也知道自己教哪些学生时,可用双向关联 1.2.创建Teacher类和Student类 package com.shore.model; import java.util.HashSet; import java.util.Set; import javax.persistence.Entity; import javax.persistence.GeneratedValue; imp…
1.Annotation 注解版 1.1.应用场景(Student-Teacher):当学生知道有哪些老师教,但是老师不知道自己教哪些学生时,可用单向关联 1.2.创建Teacher类和Student类 package com.shore.model; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import j…
本文知识点(目录): 1.Annotation 注解版(只是测试建表)    2.XML版 的实现(只是测试建表)    3.附录(Annotation 注解版CRUD操作)[注解版有个问题:插入值时,外键为null,用xml 版可以解决此问题] 1.Annotation 注解版 1.1.在“一”的一方(Customer类)加@OneToMany:在“多”的一方(Order类)加@ManyToOne 1.2.创建Customer类和Order类 注意:必须在“一”的一方配mappedBy=”XX…
1.Annotation 注解版 1.1.在一的一方加Set 1.2.创建Customer类和Order类 package com.shore.model; import java.util.HashSet; import java.util.Set; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence…
1.Annotation 注解版 1.1.在多的一方加外键 1.2.创建Customer类和Order类 package com.shore.model; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.Table; /** * @author DSHORE/2019-9-19 * 多对一,单向关联(注解版) */ @Entity @Table(name="anno_cu…
1.Annotation 注解版 1.1.创建Husband类和Wife类 package com.shore.model; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.OneToOne; import o…
1.Annotation 注解版 1.1.创建Husband类和Wife类 package com.shore.model; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import org.hibernate.annotations.Type; /**…
1.Hibernate联合主键(Annotation实现) 1.1.单列主键 1.1.1.为什么要有主键? //唯一确定一条记录    1.1.2.一个表能否有多个主键? //不能    1.1.3.为什么把id设为主键? //如果有其他的方式可以作为主键,id可以不要    1.1.4.主键生成策略:        identity:自增长,对DB2,MySQL, MS SQL Server, Sybase和HypersonicSQL的内置标识字段提供支持. 返回的标识符是long, shor…
1.Hibernate的原理/流程步骤 1.通过Configuration().configure(); 读取并解析hibernate.cfg.xml配置文件,并创建一个configuration对象.2.由hibernate.cfg.xml中的<mapping resource="com/xxx/xxx/Student.hbm.xml"/>读取并解析映射信息3.通过configuration.buildSessionFactory(); //创建SessionFactor…
01[Object类.常用API] 主要内容 Object类 Date类 DateFormat类 Calendar类 System类 StringBuilder类 包装类 第一章 Object类 1.1 概述 java.lang.Object类是Java语言中的根类,即所有类的父类.它中描述的所有方法子类都可以使用.在对象实例化的时候,最终找的父类就是Object. 如果一个类没有特别指定父类,那么默认则继承自Object类.例如: public class MyClass /*extends…