SSM搭建
Posted xbamboo
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SSM搭建相关的知识,希望对你有一定的参考价值。
发现项目源码没有了,只好把搭建时的资料发上来,希望用到的时候还能记得~~~
按照本项目从无到有,起于项目创建,通过JDBC测试数据库连接,使用myBatis映射数据库。新建项目,除去JDBC,加入spring framework。
SSM(Spring+SpringMVC+myBatis)整合
1. 基本概念
1.1 Spring
Spring是一个开源框架,轻量级java开发框架。使用IoC(控制反转)容器将各个对象隔离降耦,后来提出IoC的本质概念injection dependency。
1.2 SpringMVC
MVC全名是Model View Controller, 是模型-视图-控制器的缩写。Spring MVC分离了控制器,对象,分派器以及处理程序对象的角色,使得它们更容易进行定制。
1.3 MyBatis
MyBatis 使用简单的 XML或注解用于配置和原始映射,将接口和 Java 的POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。
2. 建立java project,使用JDBC
JDE:myeclipse
DB:Oracle 使用PLSQL连接
Jar包:mysql-connector-java-5.1.34.jar
Ojdbc6.jar
2.1 基本配置
下载jar包,在项目下新建一个lib文件夹,将jar包放入。
右键打开properties-Java Build Path-Librareia-Add JARs,选择这两个个jar包导入。
2.2 新建table
SQL语句:
2.3 建立JDBC属性文件(mysql没有driver这一个参数,ulr也和mysql不同,注意区分)
2.4 根据table建立实体类(User.java)
2.5 DAO接口文件(UserDAO.java)
在这个文件中连接并调用数据库,主要包括以下步骤:
① 取得JDBC属性文件中的参数
② 加载JDBC.ORCLE驱动(连接mysql没有这一句)
③ 分配一个Connection对象,连接数据库
④ 分配statement对象,从返回的resultset中检索数据,然后按照顺序关闭ResultSet,Statement(preparedStatement), Connection
2.6 运行UserDAO.java
结果:读取了table内容
3. 使用mybatis
与上一个项目区别:弃用userDAO.java
Jar包:Mybatis-3.2.1.jar,并且导入
3.1 建立Mybatis的配置文件mybatis-config.xml
格式基本都是固定的,几个标签的顺便不可改变,常用的几个configuration见我写的Mybatis相关.doc。
3.2 已经定义好了实体类文件User.java,现在定义操作users表的sql映射文件userMapper.xml
创建一个包,专门存放sql映射文件,新建userMapper.xml
首先需要为这个mapper指定一个唯一的namespace,namespace习惯上设置为包名+sql映射文件名,这样就能保证namespaces值的唯一性。
3.3 在mybatis-config.xml文件中注册userMapper.xml文件
<mappers>
<mapper resource = “mybatis/sqltest/userMapper.xml”/>
</mappers>
注意,字符串里的间断都是/而不是 . 。
3.4 编写测试代码:执行定义的select语句
Main method主要包括以下一个步骤:
a.Mybatis配置文件: String resource = “mybatis-config.xml”;
b.使用类加载器加载mybatis配置文件:
InputStream is = Test1.class.getClassLoader().getResourceAsStream(resource);
c. 构建sqlSession的工厂
SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(is);
d. 创建能执行映射文件中sql的sqlSession
SqlSession session = sessionFactory.openSession();
e.执行查询返回一个唯一user对象的sql, 字符串是userMapper.xml文件中mapper标签的namespace属性的值,getUser是select标签的id属性值
User user = session.selectOne("me.gacl.mapping.userMapper.getUser", 1);
3.5 运行,得到结果显示如下:
4. Spring + mybatis
新建web项目TEMP,去掉userDao和test.java,其余保留。
三大框架的整合有两个配置文件ApplicationContext.xml, ApplicationContext-mvc.xml和两个资源文件分别为db.properties,log4j.properties。完整的目录结构如下:
增加Jar包:spring-core,spring-web,spring-xom,spring-tx,spring-jdbc,spring-webmvc,spring-aop,spring-context-support,spring-test,mybatis-spring,javaee-api,commons-dbcp,jst1,log4j,fastjson,slf4j-api,slf4j-log4j12,Jackson-mapper-asl,commons-fileupload,commons-io,commons-codec
4.1 引入jar包
4.2 Spring和mybatis的整合
4.2.1 完善JDBC属性文件
4.2.2 建立AppllicationContext.xml(spring-mybatis.xml)配置文件
此文件就是用来完成spring和mybatis的整合。主要的功能是启用注解, 自动扫描,自动诸如,配置数据库等。
以上是关于SSM搭建的主要内容,如果未能解决你的问题,请参考以下文章
SSM-MyBatis-05:Mybatis中别名,sql片段和模糊查询加getMapper