网站首页 > 博客文章 正文
利用maven搭建一个web项目,
项目整合SSM框架,用到的jar包如下:
<dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.11</version> <scope>test</scope> </dependency> <!-- 添加Servlet支持 --> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> </dependency> <dependency> <groupId>javax.servlet.jsp</groupId> <artifactId>javax.servlet.jsp-api</artifactId> <version>2.3.1</version> </dependency> <!-- 添加jtl支持 --> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency> <!-- 添加Spring支持 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>4.1.7.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-beans</artifactId> <version>4.1.7.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-tx</artifactId> <version>4.1.7.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>4.1.7.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context-support</artifactId> <version>4.1.7.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>4.1.7.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>4.1.7.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aop</artifactId> <version>4.1.7.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aspects</artifactId> <version>4.1.7.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>4.1.7.RELEASE</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>1.2.3</version> </dependency> <!-- 添加日志支持 --> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.7.12</version> </dependency> <!-- 添加mybatis支持 --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.3.0</version> </dependency> <!-- jdbc驱动包 --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.24</version> </dependency> <!-- 添加连接池druid支持 --> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.0.16</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.11</version> <scope>test</scope> </dependency>
DAO层代码编写
1、补充目录
用idea工具新建一个普通的maven web项目,新项目的目录结构如下,目前是不完整的,需要我们补充完善。
在main目录下新建java目录 ,并且转为sources root,操作:
右键目录-->make directory as --> sources root。
还要在main目录下新建一个放配置文件的resources文件夹,并转为resources root。操作:
右键文件夹 --> make directory as --> resources root。
如果要做单元测试,则在src下新建test文件夹(和main文件夹同一级),再在test下新建java文件夹,并把java文件夹转为sources root即可。完成后目录结构如下:
现在基本的需要用到的文件夹就创建完成了。
2、新建实体类
新建一个test.domain包用于放实体类。新建实体类Book,示例用就简单点3个字段,此处类的属性都和数据表的字段是对应一致的。
3、建dao接口
先建一个包,叫test.dao,当然也可以叫mapper,看个人习惯吧。在包里新建BookDao接口。
接口现在只有一个简单的功能,通过id查找Book实体类。
public Book findById(Integer id);
dao接口完成之后,mybatis是不需要写实现类的,我们需要在resources下建一个和接口在同一个包路径的一个包,来放置映射文件,这样编译的时候会和接口在同一路径中。
映射文件BookDao.xml和接口名称一致。映射文件主要内容:
<mapper namespace="test.dao.BookDao"> <select id="findById" parameterType="int" resultType="book"> select * from book where id = #{id}; </select> </mapper>
因为类字段和数据库表字段完全一致,所以这里返回实体可以使用resultType,否则需要定义resultMap。
映射文件写完后,按理需要写mybatis主配置文件,但现在和spring整合所以不需要单独写mybatis配置文件,全交给spring即可。
4、srping配置文件
在resource文件夹下新建srpring配置文件:applicationContext.xml。
关于dao层的配置:
<!--DAO 层配置文件开始--> <!-- 配置数据源 --> <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource"> <property name="url" value="jdbc:mysql://localhost:3306/maven?useUnicode=true&characterEncoding=UTF-8"/> <property name="username" value="root"/> <property name="password" value="root"/> </bean> <!-- 配置mybatis的sqlSessionFactory --> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource" /> <!--扫描pojo包,给包下所有对象起别名--> <property name="typeAliasesPackage" value="test.domain" /> </bean> <!-- 扫描接口包路径,生成包下所有接口代理对象 ,并放入spring容器中 --> <!-- DAO接口所在包名,Spring会自动查找其下的类 --> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="basePackage" value="test.dao" /> <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property> </bean> <!--DAO 层配置文件结束-->
到此,dao层相关代码编写完毕,可以做一个单元测试看到底起不起作用。
5、单元测试
在test包下写单元测试的代码。
测试代码:
public class BookTest { @Test public void findById(){ ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml"); BookDao bean = ac.getBean(BookDao.class); Book book = bean.findById(1); System.out.println(book.getName()); } }
剩下的,可以自己造些数据测试是否正常。
猜你喜欢
- 2024-10-20 从零开发一个WEB应用(一)搭建后端开发环境
- 2024-10-20 SpringBoot教程:Maven方式创建SpringBoot项目
- 2024-10-20 学Maven,这篇万余字的教程,真的够用了
- 2024-10-20 javaEE技术分享之如何使用Spring Boot快速创建Web应用
- 2024-10-20 Maven项目改为spring boot项目的方法
- 2024-10-20 「干货」带你走进Spring Boot 项目实战:Maven 多模块项目搭建
- 2024-10-20 Eclipse + Ant / Maven + Java 8 开发环境搭建一文穿透
- 2024-10-20 idea新建springboot项目(idea新建一个springboot项目)
- 2024-10-20 Maven+Jetty/Tomcat进行web部署开发
- 2024-10-20 IDEA下从零开始搭建SpringBoot工程
你 发表评论:
欢迎- 367℃用AI Agent治理微服务的复杂性问题|QCon
- 358℃初次使用IntelliJ IDEA新建Maven项目
- 357℃手把手教程「JavaWeb」优雅的SpringMvc+Mybatis整合之路
- 351℃Maven技术方案最全手册(mavena)
- 348℃安利Touch Bar 专属应用,让闲置的Touch Bar活跃起来!
- 346℃InfoQ 2024 年趋势报告:架构篇(infoq+2024+年趋势报告:架构篇分析)
- 345℃IntelliJ IDEA 2018版本和2022版本创建 Maven 项目对比
- 342℃从头搭建 IntelliJ IDEA 环境(intellij idea建包)
- 最近发表
- 标签列表
-
- powershellfor (55)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- vue数组concat (56)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)