MAVEN day04 SSH之分模块开发
一、创建父工程
1.选择>>"Maven Project"创建Maven工程、并且选择Packaging为 POM。
创建父工程主要是让子工程区继承父工程,减少冗余,多团队开发。

2.在pom.xml文件中添加所需要的依赖包。(方便子类继承)
3.将父工程打包到本地仓库中。(使用 "工程右键">>"Run As" >>"Maven build... ">>输入"install")

二、创建Dao层模块(及导入相关配置文件)
1.在父工程右键>>"new ">>"Maven Module" >>"finish"

2.在该模块中写和dao有关的代码。如下图所示。

3.测试功能代码(junit,每次测试完以防发生未知错误,建议测试完注解)
因为test代码会和install冲突,执行两次。

4.将dao模块发布到本地仓库(为service提供使用)
右键模块>>"Run As">>"Maven Build...">>"install"

三、service模块对的开发(及导入相关配置文件)
1.在父工程右键>>"new ">>"Maven Module" >>"finish"

2.在service模块中的“pom.xml”添加“dao依赖”(备注:如果在pom.xml中搜索不到,是因为没有重建索引)

添加dao依赖包如图所示:


3.添加service模块代码

4.测试该模块(记得测试完要注释)使用以下代码测试。(因为service层测试和dao层不一样。service层需要用到dao层的配置代码,所以也是需要要到applicationContext-dao.xml配置文件。通过locations={"classpath*:applicationContext-*.xml"}来获取多个配置文件。)
//@ContextConfiguration(locations={"classpath*:applicationContext-*.xml"})
//@RunWith(SpringJUnit4ClassRunner.class)
public class CustomerServiceImplTest {
//@Autowired
//private CustomerService customerService;
@Test
public void test() {
Customer customer = customerService.findCustomerByID(1L);
System.out.println("********************"+customer.getCustName());
}
}
测试过后的代码一定要注释,不然打包回出现未知错误 !!!
5.发布到本地仓库中(为web模块提供使用)

四、对web模块进行开发
1.创建web模块右键 "父工程">>"Maven Module">>"finish">>“选择war”>>"src\main\webapp\WEB-INF\web.xml"否则会出现红色错误

2.导入service依赖jar包

3.编写service模块的代码

4.在web.xml中对ContextLoaderListener和StrutsPrepareAndExecuteFilter进行配置。配置代码如下。
<!-- 配置struts核心过滤器 -->
<filter>
<filter-name>struts</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter> <filter-mapping>
<filter-name>struts</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping> <!-- 配置spring过滤器 --> <listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener> <context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:applicationContext-*.xml</param-value>//classpath*:applicationContext-*.xml中的*是可以包括jar的
</context-param>
5.启动web项目进行测试。(tomcat:run)
运行父工程和web模块都可以
MAVEN day04 SSH之分模块开发的更多相关文章
- SSH框架分模块开发
------------------siwuxie095 SSH 框架分模块开发 1.在 Spring 核心配置文件中配置多个内容,容易造成 配置混乱,不利于维护 「分模块开发主要针对 Spring ...
- Maven02——回顾、整合ssh框架、分模块开发、私服
1 回顾 1.1 Maven的好处 节省空间 对jar包做了统一管理 依赖管理 一键构建 可跨平台 应用在大型项目可提高开发效率 1.2 Maven安装部署配置 1.3 Maven的仓库 本地仓库 远 ...
- java使用maven项目(二)分模块开发
1 整合ssh框架 1.1 依赖传递 只添加了一个struts2-core依赖,发现项目中出现了很多jar, 这种情况 叫 依赖传递 1.2 依赖版本冲突的解决 1. 第 ...
- spring+springmvc+hibernate架构、maven分模块开发样例小项目案例
maven分模块开发样例小项目案例 spring+springmvc+hibernate架构 以用户管理做測试,分dao,sevices,web层,分模块开发測试!因时间关系.仅仅測查询成功.其它的准 ...
- ssm集成(maven)& 分模块开发--详细教程
1 maven版本的ssm 1.1 最简单的版本步骤: (1) 创建maven web项目 (2) 在pom.xml中导入依赖的jar包 (3) 再写配置文件: web.xml <!DOCTYP ...
- Spring_day04--HibernateTemplate介绍_整合其他方式_Spring分模块开发
HibernateTemplate介绍 1 HibernateTemplate对hibernate框架进行封装, 直接调用HibernateTemplate里面的方法实现功能 2 HibernateT ...
- Struts2_day01--Struts2的核心配置文件_常量配置_分模块开发_Action编写方式
Struts2的核心配置文件 1 名称和位置固定的 2 在配置文件中主要三个标签 package.action.result,标签里面的属性 标签package 1 类似于代码包,区别不同的actio ...
- Struts2分模块开发
-------------------siwuxie095 Struts2 分模块开发 在实际开发中,如果一个项目是团队开发的,也就是很多人开发的, 每个人都需要去修改 struts.xml,因为 s ...
- 七 Spring的分模块开发的配置,保存客户案例
Spring的分模块开发的配置 加载配置文件的时候,加载多个 在一个配置文件中引入多个配置文件(常用) 保存客户案例 applicationContext.xml: <?xml version= ...
随机推荐
- Xshell设置密钥登录CentOS6.5_64位(图文版)
一.环境 CentOS6.5 64位 VMware 14 Pro XSHEEL 5 build 1333 宝塔Linux面板 二.生成XSHELL密钥 三.上传公钥到服务器,并配置 1.上传vCent ...
- What’s new for Spark SQL in Apache Spark 1.3(中英双语)
文章标题 What’s new for Spark SQL in Apache Spark 1.3 作者介绍 Michael Armbrust 文章正文 The Apache Spark 1.3 re ...
- [elk]elasticsearch实现冷热数据分离
本文以最新的elasticsearch-6.3.0.tar.gz为例,为了节约资源,本文将副本调为0, 无client角色 https://www.elastic.co/blog/hot-warm-a ...
- how-can-i-see-the-size-of-files-and-directories-in-linux
https://stackoverflow.com/questions/11720079/how-can-i-see-the-size-of-files-and-directories-in-linu ...
- UE4/Unity3d 根据元数据自动生成与更新UI
大家可能发现一些大佬讲UE4,首先都会讲类型系统,知道UE4会根据宏标记生成一些特定的内容,UE4几乎所有高级功能都离不开这些内容,一般来说,我们不会直接去使用它. 今天这个Demo内容希望能加深大家 ...
- Linux 特殊字符_008
Linux 特殊字符用于用户命令行bash环境处理数据,达到一种命令简化使用的功能 通配符 符号 功能 备注 * 代表所有(0到多个)字符 ? 代表任意一个字符 [ ] 匹配[ ]任意一个字符,写法[ ...
- 【CentOS-7+ Ambari 2.7.0 + HDP 3.0+HAWQ2.3.00】遭遇问题及解决记录
一.zookeeper超出最大连接限制:ambari server检测到critical错误, zookeeper server on ep-bd01:2181 连接被积极拒绝,翻看主机上zookee ...
- Easy UI combogrid动态加载数据
场景: datagrid的每一行允许编辑,一行中有一个字段,编辑时,提供下拉框选项,供选择. 下拉框选项有多个列.如下图所示:(点击红框内的下拉按钮,会弹出绿框内的内容) 要求: 每行弹出的下拉框内容 ...
- Android查看文件大小
查看当前路径下的各个挂载模块的大小及剩余量(例如在根目录执行) df #输出 Filesystem Size Used Free Blksize /sys/fs/cgroup .0K /mnt/ase ...
- scala 隐式详解(implicit关键字)
掌握implicit的用法是阅读spark源码的基础,也是学习scala其它的开源框架的关键,implicit 可分为: 隐式参数 隐式转换类型 隐式调用函数 1.隐式参数 当我们在定义方法时,可以把 ...