1、创建Maven项目时,起始是没有src/main/java、src/test/java、src/test/resources,需要修改一些配置之后,自动就会创建出来;
2、开始引入Spring+MyBatis相应的jar包,Maven的好处就是:只需要在pom.xml配置文件中写上相应的包依赖语句,该项目就会自动生成相应的jar包;
3、引入相应的配置文件:
spring.xml----spring框架的配置文件;
【(1)、自动注入注解的配置:
<!-- 自动扫描(自动注入) ,扫描相应的service包-->
<context:component-scan base-package="fdx.service" />
<context:annotation-config/>
(2)、扫描包的配置:<!-- 引入属性文件,用于连接数据库、classpath表示的是src/main/resources目录下 -->
<context:property-placeholder location="classpath:config.properties" />
】
spring-mybatis.xml配置文件-----spring框架与mybatis框架整合的配置文件;
4、开始写程序,mapping(实体类的配置文件类),model(实体类)、dao(接口,数据逻辑层)、service(服务接口)、serviceImpl(实现业务接口的实现类);
在相应的类中要有相应的注解:比如:serviceImpl类上面要写上@service("相应的接口名")[email protected]("userService");
5、测试类:需要在src/test/java这样子的包下建立测试类--使用的junit单元测试;【这样的话当然需要引入相应的包依赖语句,添加jar包
以上是Maven构建Spring+MyBatis框架的项目过程;
下面是写项目时遇到的问题:
1、在写service实现类【业务逻辑之后,调用数据库即dao】中要调用dao接口中相应的方法,---所有要注入相应的dao到实现类中,当然也要有相应的set、get方法;注入使用@Autowired----还要有一个@service的注解;
2、sqlserver2000与sqlserver2005版的数据库驱动名与URL路径是有区别的:
SqlServer2000版:
驱动名DriverName:com.microsoft.jdbc.sqlserver.SQLServerDriver
路径URL:jdbc:microsoft:sqlserver://localhost:1433; DatabaseName=sample
SqlServer2005版:
驱动名DriverName = com.microsoft.sqlserver.jdbc.SQLServerDriver
路径URL = jdbc:sqlserver://localhost:1433; DatabaseName=sample
而在程序中我用的是2000版的,然而我的数据库软件是2005版,所以在运行时一直显示出错;修改之后错误不再有;
3、在mapper.xml配置文件中相应sql语句id的配置需要跟dao接口中的方法名相一致,否则会提示找不到接口中的方法,或者没有值;
即:
<select id="selectById">--sql语句-</select>
dao接口中:
public User selectById(String id);
4、mapper.xml配置文件中sql语句的书写不对,因为写的sql语句在数据库软件中运行出错,提示有错误,然后改了改,才出来的结果: