创建多模块项目,及controller,service及dao模块的调用
File->new->project
步骤一
步骤二
此时父模块就创建好了
创建好的父模块
我们需要在这个父模块上创建其他模块(dao,service等)
在父模块基础上创建子模块
1)这时候创建的子模块dao是普通的java项目,依次按如下选择
步骤一
步骤二
步骤三
此时,maven_dao就创建好了
步骤四
再创建maven_service
步骤一
步骤二
步骤三
步骤四
此时service就创建好了
查看创建的service
创建controller
步骤一
步骤二
步骤三
步骤四
此时controller就创建好了
查看创建的controller
至此,三个子模块就创建好了!!
接下来需要修改这三个子模块中各自的配置文件
dao:
修改dao配置文件
修改完后记得点击右上角reload一下
service:跟dao一模一样
controller:跟dao一模一样
修改配置文件后,开始设置模块之间的依赖关系:controller需要调用service层方法,service层要调dao层方法
先设置maven_dao模块:
创建一个包dao
创建包
(注意:如果右键发现没有package这个选择即不能创建包就点击java右键->mark directory as->Sources Root即可)
再在这个包dao下新建一个类UserDao
包dao里创建一个类UserDao
再在类里定义一个方法即:
类里定义一个方法
此时dao就搞定,再轮到了service:
service:
创建一个service包
创建包service
包里创建一个类UserService:
创建类UserService
类里创建一个方法testService()并且在这里引用maven_dao里的方法,但是注意,service要引用dao里的方法之前,需要在service的pom.xml文件里将dao里pom.xml文件的唯一标识引入进来
dao里的唯一标识
service里引入dao唯一标识
此时再到service里输入UserDao的时候就会出现提示了并且可以成功引用这个类了
service方法引用dao里的方法
再输出一句话,即这样
最终方法
至此service搞定,到controller了
controller:controller要调用service模块
又因为web层需要用到servlet,所以应该在controller的pom.xml文件中引入servlet的api:
controller里的pom.xml中引入servlet的引用
准备就绪后可以在controller模块中创建servlet:
首先创建一个java目录(如果没有的话),再Sources Root一下,再创建一个com.xxxx.controller包
创建包
再到这个包下创建一个servlet(就是一个普通java类,只不过实现了servlet的规范接口):
创建servlet
实现servlet的规范接口
然后去重写service方法:ctrl+o:
重写service方法
即得到
重写结果
再把注解加上,就叫user吧,简单一点
加上注解
这里就简答打印一句话,并且调用maven_service模块的方法
同样,在controller的pom.xml中也要引入service的pom.xml的唯一标识即依赖即:
controller中引入service的唯一标识依赖
最终效果
输出一句话并调用service的方法
至此,各个模块之间的依赖关系就完成了:controller层依赖service层,service层依赖dao层,现在只要执行一下controller的方法,那么controller,service和dao里的方法都会执行一遍,想要运行它,还需要服务器的插件即tomcat或者jetty,放到controller里的pom.xml中,因为这个是web项目即:
添加tomcat插件
再配置相关命令启动它
配置命令
点击运行按钮执行
发现启动失败,可能是各种依赖问题
启动失败
那么这个时候就需要对各个子模块等配置命令install一下(即把这个项目打包放到仓库中供给别的模块使用)
先给dao进行install一下
给dao添加install命令
点击apply后继续给service进行install(点击左上角+号再点击maven进行)
给service进行install
再给web层进行install
给web进行install
再给parent进行install
给parent进行install
现在给各个模块进行启动,按顺序来dao
显示success说明dao是ok的
success
再service,再controller再parent.
最后再去启动tomcat7
启动成功
访问
浏览器访问
看到控制台对应输出
控制台输出
所以这个多模态就创架成功了
总结一下:第一步创建一个父项目,在父项目下创建子模块,如果只是写java代码那么就创建java项目,如果需要被浏览器访问就输出页面那就创建web项目,子模块之间的依赖也得准备好,然后去启动,启动如果失败,就将每个子模块及父项目单独install一下最终再启动。