一、创建父工程

  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之分模块开发的更多相关文章

  1. SSH框架分模块开发

    ------------------siwuxie095 SSH 框架分模块开发 1.在 Spring 核心配置文件中配置多个内容,容易造成 配置混乱,不利于维护 「分模块开发主要针对 Spring ...

  2. Maven02——回顾、整合ssh框架、分模块开发、私服

    1 回顾 1.1 Maven的好处 节省空间 对jar包做了统一管理 依赖管理 一键构建 可跨平台 应用在大型项目可提高开发效率 1.2 Maven安装部署配置 1.3 Maven的仓库 本地仓库 远 ...

  3. java使用maven项目(二)分模块开发

    1       整合ssh框架 1.1     依赖传递 只添加了一个struts2-core依赖,发现项目中出现了很多jar, 这种情况 叫 依赖传递 1.2     依赖版本冲突的解决 1.  第 ...

  4. spring+springmvc+hibernate架构、maven分模块开发样例小项目案例

    maven分模块开发样例小项目案例 spring+springmvc+hibernate架构 以用户管理做測试,分dao,sevices,web层,分模块开发測试!因时间关系.仅仅測查询成功.其它的准 ...

  5. ssm集成(maven)& 分模块开发--详细教程

    1 maven版本的ssm 1.1 最简单的版本步骤: (1) 创建maven web项目 (2) 在pom.xml中导入依赖的jar包 (3) 再写配置文件: web.xml <!DOCTYP ...

  6. Spring_day04--HibernateTemplate介绍_整合其他方式_Spring分模块开发

    HibernateTemplate介绍 1 HibernateTemplate对hibernate框架进行封装, 直接调用HibernateTemplate里面的方法实现功能 2 HibernateT ...

  7. Struts2_day01--Struts2的核心配置文件_常量配置_分模块开发_Action编写方式

    Struts2的核心配置文件 1 名称和位置固定的 2 在配置文件中主要三个标签 package.action.result,标签里面的属性 标签package 1 类似于代码包,区别不同的actio ...

  8. Struts2分模块开发

    -------------------siwuxie095 Struts2 分模块开发 在实际开发中,如果一个项目是团队开发的,也就是很多人开发的, 每个人都需要去修改 struts.xml,因为 s ...

  9. 七 Spring的分模块开发的配置,保存客户案例

    Spring的分模块开发的配置 加载配置文件的时候,加载多个 在一个配置文件中引入多个配置文件(常用) 保存客户案例 applicationContext.xml: <?xml version= ...

随机推荐

  1. bzoj1030【JSOI2007】文本生成器

    1030: [JSOI2007]文本生成器 Time Limit: 1 Sec  Memory Limit: 162 MB Submit: 2891  Solved: 1193 [Submit][St ...

  2. “2014年CityEngine三维建模与设计精英培训班”——全国巡回举办

    watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYXJjZ2lzX2FsbA==/font/5a6L5L2T/fontsize/400/fill/I0JBQk ...

  3. 云服务jdk 升级为 OpenJDK11

    由于oracle是个碧池,大家都懂,今年来,jdk版本更新的越来越频繁,所以目前商业版本需要收费了 每个企业都要考虑这样的问题,所以嘛,新项目试水肯定是要的,用openJDK11吧, https:// ...

  4. python中字符串前的r什么意思

    Python中,u表示unicode string,表示使用unicode进行编码,没有u表示byte string,类型是str,在没有声明编码方式时,默认ASCI编码.如果要指定编码方式,可在文件 ...

  5. amqp笔记

    1.exchange message的生产者可以将消息发送给exchange,然后由exchange路由到不同的queue中. exchange有4种类型: direct exchange:msg只会 ...

  6. fiddler抓包url有乱码

    fiddler抓包url有乱码: 解决具体步骤: 注册表:regedit   HKEY_CURRENT_USER\Software\Microsoft\Fiddler2 1.打开注册表,regedit ...

  7. SSH下authorized_keys, id_rsa, id_rsa.pub, known_hosts作用

    一.known_hsots ssh会把你每个你访问过计算机的公钥(public key)都记录在~/.ssh/known_hosts.当下次访问相同计算机时,OpenSSH会核对公钥.如果公钥不同,O ...

  8. Linux iptables原理和使用

    1.原理 iptables简介 netfilter/iptables(简称为iptables)组成Linux平台下的包过滤防火墙,与大多数的Linux软件一样,这个包过滤防火墙是免费的,它可以代替昂贵 ...

  9. ABBYY PDF Transformer+功能概述

    ABBYY PDF Transformer+是一个新的.全面的巧妙解决PDF文档的工具,它将泰比的光学字符识别(OCR)技术和Adobe®PDF技术完美结合,以确保实现便捷地处理任何类型的PDF文件, ...

  10. BackboneJS 源码注释

    Backbone 作者在源码中做了很好的注释,这里只是锦上添花,补充一些个人的理解而已. // Backbone.js 1.2.3 // (c) 2010-2015 Jeremy Ashkenas, ...