700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > spring mvc mysql 实例_Spring+Mybatis+SpringMVC+Maven+MySql搭建实例

spring mvc mysql 实例_Spring+Mybatis+SpringMVC+Maven+MySql搭建实例

时间:2023-08-08 14:59:18

相关推荐

spring mvc mysql 实例_Spring+Mybatis+SpringMVC+Maven+MySql搭建实例

一、准备工作

1. 首先创建一个表:

CREATETABLE`t_user`(

`USER_ID`int(11)NOTNULLAUTO_INCREMENT,

`USER_NAME`char(30)NOTNULL,

`USER_PASSWORD`char(10)NOTNULL,

`USER_EMAIL`char(30)NOTNULL,

PRIMARYKEY(`USER_ID`),

KEY`IDX_NAME`(`USER_NAME`)

)ENGINE=InnoDBAUTO_INCREMENT=11DEFAULTCHARSET=utf8

随便插入一些数据:

INSERTINTOt_user(USER_ID,USER_NAME,USER_PASSWORD,USER_EMAIL)VALUES(1,'林炳文','1234567@','ling1005@');

INSERTINTOt_user(USER_ID,USER_NAME,USER_PASSWORD,USER_EMAIL)VALUES(2,'evan','123','fff@');

INSERTINTOt_user(USER_ID,USER_NAME,USER_PASSWORD,USER_EMAIL)VALUES(3,'kaka','cadg','fwsfg@');

INSERTINTOt_user(USER_ID,USER_NAME,USER_PASSWORD,USER_EMAIL)VALUES(4,'simle','cscs','fsaf@');

INSERTINTOt_user(USER_ID,USER_NAME,USER_PASSWORD,USER_EMAIL)VALUES(5,'arthur','csas','fsaff@');

INSERTINTOt_user(USER_ID,USER_NAME,USER_PASSWORD,USER_EMAIL)VALUES(6,'小德','yuh78','fdfas@');

INSERTINTOt_user(USER_ID,USER_NAME,USER_PASSWORD,USER_EMAIL)VALUES(7,'小小','cvff','fsaf@');

INSERTINTOt_user(USER_ID,USER_NAME,USER_PASSWORD,USER_EMAIL)VALUES(8,'林林之家','gvv','lin@');

INSERTINTOt_user(USER_ID,USER_NAME,USER_PASSWORD,USER_EMAIL)VALUES(9,'林炳文Evankaka','dfsc','ling@');

INSERTINTOt_user(USER_ID,USER_NAME,USER_PASSWORD,USER_EMAIL)VALUES(10,'apple','uih6','ff@');

二、工程创建

1、Maven工程创建

(1)新建

(2)选择快速框架

(3)输出项目名,包,记得选war(表示web项目,以后可以spingMVC连起来用)

(4)创建好之后

目录如下:

(5)检查下

这三个地方JDK的版本一定要一样!!!!

三、sping+mybatis配置

1、整个工程目录如下:

2、POM文件

xsi:schemaLocation="/POM/4.0.0/xsd/maven-4.0.0.xsd">

4.0.0

com.lin

ssm_project

0.0.1-SNAPSHOT

war

3.2.8.RELEASE

1.6.6

1.2.12

4.10

3.2.1

org.springframework

spring-core

${spring.version}

org.springframework

spring-webmvc

${spring.version}

org.springframework

spring-context

${spring.version}

org.springframework

spring-context-support

${spring.version}

org.springframework

spring-aop

${spring.version}

org.springframework

spring-aspects

${spring.version}

org.springframework

spring-tx

${spring.version}

org.springframework

spring-jdbc

${spring.version}

org.springframework

spring-web

${spring.version}

junit

junit

${junit.version}

test

log4j

log4j

${log4j.version}

org.slf4j

slf4j-api

${slf4j.version}

org.slf4j

slf4j-log4j12

${slf4j.version}

org.springframework

spring-test

${spring.version}

test

org.mybatis

mybatis

${mybatis.version}

org.mybatis

mybatis-spring

1.2.0

mysql

mysql-connector-java

5.1.29

3、java代码-------src/main/java

目录如下:

(1)User.Java

对应数据库中表的字段,放在src/main/java下的包com.lin.domain

packagecom.lin.domain;

/**

*User映射类

*

*@authorlinbingwen

*@time.5.15

*/

publicclassUser{

privateIntegeruserId;

privateStringuserName;

privateStringuserPassword;

privateStringuserEmail;

publicIntegergetUserId(){

returnuserId;

}

publicvoidsetUserId(IntegeruserId){

this.userId=userId;

}

publicStringgetUserName(){

returnuserName;

}

publicvoidsetUserName(StringuserName){

this.userName=userName;

}

publicStringgetUserPassword(){

returnuserPassword;

}

publicvoidsetUserPassword(StringuserPassword){

this.userPassword=userPassword;

}

publicStringgetUserEmail(){

returnuserEmail;

}

publicvoidsetUserEmail(StringuserEmail){

this.userEmail=userEmail;

}

@Override

publicStringtoString(){

return"User[userId="+userId+",userName="+userName

+",userPassword="+userPassword+",userEmail="+userEmail

+"]";

}

}

(2)UserDao.java

Dao接口类,用来对应mapper文件。放在src/main/java下的包com.lin.dao,内容如下:

packagecom.lin.dao;

importcom.lin.domain.User;

/**

*功能概要:User的DAO类

*

*@authorlinbingwen

*@since9月28日

*/

publicinterfaceUserDao{

/**

*

*@authorlinbingwen

*@since9月28日

*@paramuserId

*@return

*/

publicUserselectUserById(IntegeruserId);

}

(2)UserService.java和UserServiceImpl.java

service接口类和实现类,放在src/main/java下的包com.lin.service,内容如下:

UserService.java

packagecom.lin.service;

importorg.springframework.stereotype.Service;

importcom.lin.domain.User;

/**

*功能概要:UserService接口类

*

*@authorlinbingwen

*@since9月28日

*/

publicinterfaceUserService{

UserselectUserById(IntegeruserId);

}

UserServiceImpl.java

packagecom.lin.service;

importorg.springframework.beans.factory.annotation.Autowired;

importorg.springframework.stereotype.Service;

importcom.lin.dao.UserDao;

importcom.lin.domain.User;

/**

*功能概要:UserService实现类

*

*@authorlinbingwen

*@since9月28日

*/

@Service

publicclassUserServiceImplimplementsUserService{

@Autowired

privateUserDaouserDao;

publicUserselectUserById(IntegeruserId){

returnuserDao.selectUserById(userId);

}

}

(4)mapper文件

用来和dao文件对应,放在src/main/java下的com.lin.mapper包下

mapperPUBLIC"-////DTDMapper3.0//EN"

"/dtd/mybatis-3-mapper.dtd">

SELECT*FROMt_userWHEREUSER_ID=#{userId}

4、资源配置-------src/main/resources

目录如下:

(1)mybatis配置文件

这里没有什么内容,因为都被放到application.xml中去了,放在src/main/resources下的mybatis文件夹下

mybatis-config.xml内容如下:

configurationPUBLIC"-////DTDConfig3.0//EN"

"/dtd/mybatis-3-config.dtd">

(2)数据源配置jdbc.properties

放在src/main/resources下的propertiesy文件夹下

jdbc_driverClassName=com.mysql.jdbc.Driver

jdbc_url=jdbc:mysql://localhost:3306/learning

jdbc_username=root

jdbc_password=christmas258@

(3)Spring配置

这是最重要的:application.xml内容如下

xmlns:xsi="/2001/XMLSchema-instance"xmlns:context="/schema/context"

xmlns:aop="/schema/aop"

xsi:schemaLocation="

/schema/beans

/schema/beans/spring-beans-3.0.xsd

/schema/aop

/schema/aop/spring-aop-3.0.xsd

/schema/context

/schema/context/spring-context-3.0.xsd">

classpath:properties/*.properties

class="org.springframework.jdbc.datasource.DriverManagerDataSource">

${jdbc_driverClassName}

${jdbc_url}

${jdbc_username}

${jdbc_password}

value="com.lin.dao"/>

(4)日志打印log4j.properties

就放在src/main/resources

log4j.rootLogger=DEBUG,Console,Stdout

#Console

log4j.appender.Console=org.apache.log4j.ConsoleAppender

log4j.appender.Console.layout=org.apache.log4j.PatternLayout

log4j.appender.Console.layout.ConversionPattern=%d[%t]%-5p[%c]-%m%n

log4j.logger.java.sql.ResultSet=INFO

.apache=INFO

log4j.logger.java.sql.Connection=DEBUG

log4j.logger.java.sql.Statement=DEBUG

log4j.logger.java.sql.PreparedStatement=DEBUG

log4j.appender.Stdout=org.apache.log4j.DailyRollingFileAppender

log4j.appender.Stdout.File=E://logs/log.log

log4j.appender.Stdout.Append=true

log4j.appender.Stdout.Threshold=DEBUG

log4j.appender.Stdout.layout=org.apache.log4j.PatternLayout

log4j.appender.Stdout.layout.ConversionPattern=%-d{yyyy-MM-ddHH:mm:ss}[%t:%r]-[%p]%m%n

四、单元测试

上面的配置完好,接下来就是测验成功

整个目录 如下:

(1)测试基类

packagecom.lin.baseTest;

importorg.junit.runner.RunWith;

importorg.slf4j.Logger;

importorg.slf4j.LoggerFactory;

importorg.springframework.test.context.ContextConfiguration;

importorg.springframework.test.context.junit4.AbstractJUnit4SpringContextTests;

importorg.springframework.test.context.junit4.SpringJUnit4ClassRunner;

/**

*功能概要:

*

*@authorlinbingwen

*@since9月28日

*/

//指定bean注入的配置文件

@ContextConfiguration(locations={"classpath:application.xml"})

//使用标准的JUnit@RunWith注释来告诉JUnit使用SpringTestRunner

@RunWith(SpringJUnit4ClassRunner.class)

publicabstractclassSpringTestCaseextendsAbstractJUnit4SpringContextTests{

protectedLoggerlogger=LoggerFactory.getLogger(getClass());

}

(2)测试类

packagecom.lin.service;

importorg.apache.log4j.Logger;

importorg.junit.Test;

importorg.springframework.beans.factory.annotation.Autowired;

importcom.lin.baseTest.SpringTestCase;

importcom.lin.domain.User;

/**

*功能概要:UserService单元测试

*

*@authorlinbingwen

*@since9月28日

*/

publicclassUserServiceTestextendsSpringTestCase{

@Autowired

privateUserServiceuserService;

Loggerlogger=Logger.getLogger(UserServiceTest.class);

@Test

publicvoidselectUserByIdTest(){

Useruser=userService.selectUserById(10);

logger.debug("查找结果"+user);

}

}

选中selectUserByIdTest,然后右键如下运行

输出结果:

重要打印的结果

这里

-09-2815:20:15,129[main]DEBUG[com.lin.dao.UserDao.selectUserById]-==>Preparing:SELECT*FROMt_userWHEREUSER_ID=?

-09-2815:20:15,160[main]DEBUG[com.lin.dao.UserDao.selectUserById]-==>Parameters:10(Integer)

-09-2815:20:15,160[main]DEBUG[org.mybatis.spring.SqlSessionUtils]-ClosingnontransactionalSqlSession[org.apache.ibatis.session.defaults.DefaultSqlSession@6b64bff9]

-09-2815:20:15,160[main]DEBUG[org.springframework.jdbc.datasource.DataSourceUtils]-ReturningJDBCConnectiontoDataSource

-09-2815:20:15,160[main]DEBUG[com.lin.service.UserServiceTest]-查找结果User[userId=10,userName=apple,userPassword=uih6,userEmail=ff@]

数据库:

程序成功运行,并且结果正确!

到这里配置好spring+mybatis+mysql!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

=====================================================

这里开始添加spirngMVC,并转换maven工程为web项目

五、转换web工程

接上面的工程接着说,此时要加spingMVC之前,工程得再稍微转换下

此时webapp下的结果还没有显示出来,因为此时我们还没有配置此的项目为web项目

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。