SSM环境配置
暂时跳过...
SSM
po类:创建变量
Dao类(接口):创建类型来接查询的值
Controller:把查询到结果赋值到创建的类型中,然后跳转相应界面
.xml文件:配置文件,负责告诉程序去哪里找相应的目标
我们需要查询数据内的这些数据
先写po类
(说一个小技巧)
在idea右边如图下箭头所示
点击数据库,然后弹出如下图所示窗口
点击加号
选择mysql
输入数据库的账号 密码
如果是远程数据库则把地址也写上
最后点击Test Connerction测试看是否能连接上
成功之后,就可以再右边查看表内的属性,就不必总是再去数据库看了
po类
回到正题,在po类中写需要用到的变量
这样需要用到的变量就写好了。
生成一下get、set和to string
这时候po类就写好了
package com.po;
public class Novel {
private String id;
private String name;
private String author;
private String price;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAuthor() {
return author;
}
public void setAuthor(String author) {
this.author = author;
}
public String getPrice() {
return price;
}
public void setPrice(String price) {
this.price = price;
}
@Override
public String toString() {
return "Novel{" +
"id='" + id + '\'' +
", name='" + name + '\'' +
", author='" + author + '\'' +
", price='" + price + '\'' +
'}';
}
}
Dao接口
在Com.dao下新建一个NovelDao接口
在接口写个List用List来接查到查数据
package com.Dao;
import com.po.Novel;
import java.util.List;
public interface NovelDap {
//查询所有
List<Novel> queryNovelList();
}
mapper
然后写完接口到com.mapper下新建一个NovelDaoMapper.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.Dao.NovelDap">
<select id="queryNovelList" resultType="com.Dao.NovelDap">
select * from novel
</select>
</mapper>
或者
把mybatis-config.xml复制一份到mapper目录下重命名为NovelDaoMapper.xml
把红色框框标的几处修改成mapper,然后把蓝色框框处删掉,然后写上<mapper></mapper>
然后剩下的补全
修改mybatis-config.xml
然后去到mybatis-config.xml
把NovelDaoMapper.xml加进去
代码如下:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<mappers>
<mapper resource="com/mapper/NovelDaoMapper.xml"/>
</mappers>
</configuration>
Controller
在com.controller内新建一个NovelController类
写入以下代码
package com.Controller;
import com.Dao.NovelDao;
import com.po.Novel;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import java.util.List;
@Controller
public class NovelController {
@Autowired
private NovelDao novelDao;
@RequestMapping("/novel")
public String queryAllNovel(Model model){
//查询
List<Novel> novels = novelDao.queryNovelList();
for (Novel novel : novels) {
System.out.println(novel);
}
model.addAttribute("novels",novels);
return "NovelList";//如果springmvc-servlet.xml中没有配置前缀后缀则需要写全路径
}
}
JSP
最后去web-inf目录下,新建一个NovelList.jsp,然后遍历出数据
代码如下:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%--
Created by IntelliJ IDEA.
User: misaki
Date: 2022/12/3
Time: 20:11
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<table>
<c:forEach items="${novels}" var="novel">
<tr>
<td>${novel.id}</td>
<td>${novel.name}</td>
<td>${novel.author}</td>
<td>${novel.price}</td>
</tr>
</c:forEach>
</table>
</body>
</html>
最后运行一下,没有问题就能输出结果了。
Comments | NOTHING