SSM框架的搭建
SSM框架的搭建
今天就一个字:“肝”。
*)准备工作
测试数据库如下。(id为int类型,username和password都为varchar类型,大小别太小就行,其中的id设为主键、自增)
程序素材包:
链接:https://pan.baidu.com/s/1niTBc64LvRNsBD5m2XI3pg
提取码:zz15
1)新建工程,如下图所示
GroupId和ArtifactId被统称为“坐标”是为了保证项目唯一性而提出的,如果你要把你项目弄到maven本地仓库去,你想要找到你的项目就必须根据这两个id去查找。
GroupId一般分为多个段,这里我只说两段,第一段为域,第二段为公司名称。域又分为org、com、cn等等许多,其中org为非营利组织,com为商业组织。
ArtifactID就是项目的唯一的标识符,实际对应项目的名称,就是项目根目录的名称。
这里以下图的设置为例。
第一出选择到自己Maven的安装目录,第二处选择到Maven安装目录下的conf文件夹,选择其中的settings.xml文件。
因为用到的很多资源都是从国外服务器上下载的,没有代理的话就会很慢,(当然有代理的小伙伴可以直接跳过下面这段),但是阿里有镜像服务器,可以直接从那里下载(阿里爸爸还是??嗷),我们只需要再配置一下刚刚选择的settings.xml文件就行,第一天安装的npp就可以派上用场了,在设置镜像服务器的代码段里加上红色方框中的代码即可。
附加代码段
<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>
然后再点击一下右边的那个"+"号,添加一个如下所示的Property即可。
后面的项目名称根据自己的情况进行设置就好了,到这里一个新的项目就已经全部建好了,接下来继续SSM框架的搭建。
2)右下角弹出这个提示时点一下允许自动导包
然后就可以等它自动下载完成了,如果弹出一下信息则说明创建成功(遇到其他问题的小伙伴请根据具体情况自行解决)
创建成功后的工程目录如下
3)修改pom.xml文件。直接发pom.xml的代码有点多了,素材文件楼主放在最前面的百度网盘中了,直接下载下来然后copy到pom.xml中即可,完成后如下
图所示。
4)工程项目结构搭建
新建java包,右击main选择New–>Directory,如下图所示。
新建完成后的java应该为蓝色的,如下图所示
如果是灰色的那就右击java,将其设为Sources Root,这样就能在java包中添加JAVA Class了。
同样的新建resources包,右击resources包选择Mark Directory as,再选择Resources Root。完成后如下图所示
然后再右击java,选择New–>Package,生成一个bean包
用同样的方式建立controller、dao、service包,结果如下图所示
到这里程序大致的骨架就有了。
5)实体类的编写。右击bean包,新建一个UserInfo类对应用户实体。
UserInfo代码:
public class UserInfo {
private int id;
private String username;
private String password;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
@Override
public String toString() {
return "UserInfo{" +
"id=" + id +
", username='" + username + '\'' +
", password='" + password + '\'' +
'}';
}
}
UserInfo类直接使用默认构造函数,加入getter、setter和ToString方法。
后面的三个方法都可以由编辑器自动生成。具体步骤:右击空白代码段,选择Generate
选上要添加的变量就行
6)dao层的编写。先声明接口再写实现类。在到目录下创建一个接口IEserDao,如下图所示
IUserDao代码:
import com.zhongruan.bean.UserInfo;
import java.util.List;
public interface IUserDao {
public List<UserInfo> fiandAll();
}
7)IUserDao的实现。先在resources目录下创建一个Directory,命名为mapper,再右击mapper新建一个File,将其命名为UserMapper.xml,用这个xml来实现IUserDao中的接口。
新建完成后如下图所示
UserMapper.xml代码:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.zhongruan.dao.IUserDao" >
<select id="fianAll()" resultType="com.zhongruan.dao.IUserDao">
select * from userinfo
</select>
</mapper>
8)接下来要在resources中添加的三个文件也在素材文件夹里了(是不是很贴心),直接把下面的三个文件copy到resources中即可,如下图所示(注意不是mapper目录下,别放错了)
打开db.properties文件,把数据库的参数改成自己的参数,主要是数据库密码
如果之前在java包中新建的目录不是com.zhongruan.bean(或controller或dao或service)的话,那么就在applicationContex.xml文件里相应的更换即可。
如果applicationContex.xml里有很多报红的话就看看是不是有包没有导入成功,具体如下图所示,看看Dependences里是不是有报红(有些包可能需要点一下那个刷新按钮)
9)service层的编写。右击service目录新建一个接口IUserService具体新建过程在上面的dao层已经说过一遍了,这里就不多赘述了,完成后如下图所示
IUserService代码:
import com.zhongruan.bean.UserInfo;
import java.util.List;
public interface IUserService {
public List<UserInfo> findAll();
}
10)IUserService的实现。先在service目录下新建一个Package,命名为impl,然后在impl下面新建一个类UserServiceImpl。
UserServiceImpl代码:
import com.zhongruan.bean.UserInfo;
import com.zhongruan.dao.IUserDao;
import com.zhongruan.service.IUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service //将service放入spring容器
public class UserServiceImpl implements IUserService {
@Autowired //从spring容器中取
IUserDao userDao;
@Override
public List<UserInfo> findAll() {
return userDao.findAll();
}
}
11)网页的编写。这里就不现编了,已经写好的样例网页已经放在素材包里了,直接把其中的jsp文件夹(注意是文件夹)直接copy到wabapp目录下即可,完成后如下图所示。
12)controller层的编写。在controller目录下创建一个类UserController。
UserController代码:
import com.zhongruan.bean.UserInfo;
import com.zhongruan.service.IUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import java.util.List;
@Controller
@RequestMapping("user") //local:8080:/user
public class UserController {
@Autowired
private IUserService userService;
@RequestMapping("/findAll.do") //local:8080:/user/findAll.do
public ModelAndView findAll(){
List<UserInfo> userinfos=userService.findAll();
ModelAndView mv=new ModelAndView();
mv.addObject("ui",userinfos);
mv.setViewName("allUser");//设置跳转页面
return mv;
}
}
13)spring-mvc.xml的编写。这个文件也在素材文件夹里,直接copy到resources文件夹下即可,完成如下图所示。
web.xml也在素材文件夹中直接将其中的代码copy进去即可。到这里就可以算是全部搭建完成了,接下来就是发布测试了。
14)tomcat的设置及测试。点击Add Configuration按钮,点开下拉菜单Templates,选择Tomcat Server菜单下的local。
点击Configure按钮找到自己的tomcat安装目录,然后选中即可。
然后再选择Deployment,点击旁边的那个"+"号,选择第一个Artifact
在选择第二个ssm:war exploded
点击run后运行的效果如下图所示
然后会自动弹出一个网页
到这里SSM框架就算是全部搭建完成了,明天会继续完善程序的功能,实现网页的跳转及在网页上实现JDBC的基本增删改查功能。(实际情况是今天遇到改不好的bug了,手动狗头,所以拖了进度)
苟命要紧。