SpringMVC+ibatis
来源:互联网 发布:电脑实用软件推荐 编辑:程序博客网 时间:2024/06/05 09:31
SpringMVC+Ibatis项目搭建
1 创建Maven项目
1.1 选择创建maven项目
2.2 选择创建web项目
本项目为web项目所以选择maven-archetype-webapp
2.3 配置项目参数,点击完成
2.4 添加servlet-api依赖
项目建立完成后,会发现报index.jsp文件报错,错误如下图
这是因为缺少servlet-api包引起,可在pom文件dependencies中增加
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
</dependency>
即可,至此maven项目建立完毕,可将项目部署到服务器上,通过网页访问验证是否成功
2 添加SpringMVC框架
2.1 进入maven库http://mvnrepository.com/
2.2 搜索Spring MVC(中间有空格,或是搜索Spring Web MVC)
2.3 选择第一个
2.4 选择一个版本,demo中选择4.3版本
2.5 将依赖复制到pom.xml中
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>4.3.12.RELEASE</version>
</dependency>
注:此配置会自动将其依赖文件下载
2.6 配置web文件,Spring拦截核心配置,其他诸如参数配置,字符过滤见demo
<servlet>
<servlet-name>ucmed</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>ucmed</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
此外还需以ucmed-servlet为名建立配置文件,至此Spring框架初步配置完毕,通过启动tomcat验证是否成功
2.7 ucmed-servlet配置
添加注解扫描配置
<context:annotation-config />
<context:component-scan base-package="com.ucmed.web" />
添加视图解析配置
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass"
value="org.springframework.web.servlet.view.JstlView" />
<property name="prefix" value="/WEB-INF/" />
<property name="suffix" value=".jsp" />
</bean>
Jsp依赖引入,为避免麻烦顺带可将jstl与standard引入
<!-- jsp页面 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.1.2</version>
</dependency>
<dependency>
<groupId>taglibs</groupId>
<artifactId>standard</artifactId>
<version>1.1.2</version>
</dependency>
可以写一个action(或controller)访问测试
3 添加ibatis框架
3.1 添加ibatis.jar,将下配置加入pom文件中
<!-- https://mvnrepository.com/artifact/org.apache.ibatis/ibatis-sqlmap -->
<dependency>
<groupId>org.apache.ibatis</groupId>
<artifactId>ibatis-sqlmap</artifactId>
<version>2.3.4.726</version>
</dependency>
3.2 添加spring-ibatis及spring-ibatis
<!-- https://mvnrepository.com/artifact/org.springframework/spring-ibatis -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-ibatis</artifactId>
<version>2.0.8</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-ibatis</artifactId>
<version>2.0.8</version>
</dependency>
3.3 添加mysql依赖,将下配置加入pom文件中
<!--数据库-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.6</version>
</dependency>
3.4 配置数据库与sqlMapClient
<!-- 数据库配置 -->
<context:property-placeholder location="classpath*:jdbc.properties" />
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName">
<value>${driver}</value>
</property>
<property name="url">
<value>${url}</value>
</property>
<property name="username">
<value>${username}</value>
</property>
<property name="password">
<value>${password}</value>
</property>
<property name="maxActive">
<value>${maxActive}</value>
</property>
<property name="maxIdle">
<value>${maxIdle}</value>
</property>
<property name="minIdle">
<value>${minIdle}</value>
</property>
<property name="validationQuery" value="SELECT 1" />
<property name="testOnBorrow" value="true" />
</bean>
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="configLocation">
<value>classpath:com/ucmed/mapper/SqlMapConfig.xml</value>
</property>
</bean>
<bean id="sqlMapClientTemplate" class="org.springframework.orm.ibatis.SqlMapClientTemplate">
<property name="sqlMapClient" ref="sqlMapClient"></property>
</bean>
3.5 配置SqlMapConfig.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMapConfig
PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-config-2.dtd">
<sqlMapConfig>
<sqlMap resource="com/ucmed/mapper/UserMapper.xml"/>
</sqlMapConfig>
3.6 配置UserMapper.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap namespace="User">
<typeAlias alias="User" type="com.ucmed.domain.User" />
<resultMap class="com.ucmed.domain.User" id="selectUserbyNameResult">
<result column="id" property="id" />
<result column="name" property="name" />
<result column="pass" property="pass" />
<result column="phone" property="phone" />
</resultMap>
<insert id="insertUser" parameterClass="User">
insert into user(id,name,pass,phone) values(null,#name#,#pass#,#phone#)
<selectKey resultClass="int" keyProperty="id">select last_insert_id() as id </selectKey>
</insert>
<delete id="deleteUser" parameterClass="User">
delete from user where id
= #id#
</delete>
<update id="updateUser" parameterClass="User">
update
</update>
<select id="selectUser" parameterClass="User" resultClass="com.ucmed.domain.User">
select * from user where name = #name# and pass = #pass#
</select>
<select id="selectUserbyName" resultMap="selectUserbyNameResult" parameterClass="String">
select * from user where name = #name#
</select>
</sqlMap>
3.7 generatorConfig.xml
可使用生成dao层代码减轻编写难度,新增相关插件即可使用,在此不做赘述,配置文件如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
<generatorConfiguration>
<classPathEntry
location="C:\Users\ucmed\.m2\repository\mysql\mysql-connector-java\5.1.6\mysql-connector-java-5.1.6.jar" />
<context id="context1">
<commentGenerator>
<property name="suppressAllComments" value="true" />
</commentGenerator>
<jdbcConnection connectionURL="jdbc:mysql://localhost:3306/demo"
driverClass="com.mysql.jdbc.Driver" password="" userId="root" />
<javaModelGenerator targetPackage="com.ucmed.domain"
targetProject="ism_demo" />
<sqlMapGenerator targetPackage="com.ucmed.mapper"
targetProject="ism_demo" />
<javaClientGenerator targetPackage="com.ucmed.dao"
targetProject="ism_demo" type="XMLMAPPER" />
<table schema="User" tableName="user" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false"
enableSelectByExample="false" selectByExampleQueryId="false">
</table>
</context>
</generatorConfiguration>
- SpringMVC+ibatis
- SpringMVC+IBatis之IBatis配置
- SpringMVC+Spring+Ibatis整合
- springMVC ibatis 整合案例
- SpringMVC+Ibatis架构
- SpringMVC与Ibatis整合
- springmvc\freemarcker\ibatis配置文件
- springmvc+ibatis配置环境
- springMVC+ibatis 框架整合
- SpringMVC+Ibatis框架搭建
- SpringMVC+Ibatis 临时表
- 搭建springmvc+ibatis+velocity工程
- 初学springmvc 3 + ibatis框架
- SpringMVC ibatis 搭建web应用
- maven+springmvc+ibatis环境搭建
- springMvc+ibatis+mybatis入门开发
- SpringMVC+Spring+ibatis框架平台
- SpringMVC+ibatis数据库事务控制
- JAVA反射_代理
- Android加密之文件级加密
- 客户端HttpClient4处理 Servlet Gzip后的内容
- android指定签名的apk才能安装
- >吴恩达机器学习笔记(1)
- SpringMVC+ibatis
- 使用 Azure 门户创建 Linux 虚拟机
- 程序时间随当前系统时间变化
- 每日一练28
- UI中国为你揭秘VR&AR-Google张晶华专访
- 小程序post提交,springmvc为后台接收不到参数
- B-Tree
- Hdu 5880 Family View AC自动机 水
- 关于WebView 全屏没有执行JS的问题