ThymileAF不显示来自MySQL的数据
我是ThymileAF不显示来自MySQL的数据,mysql,spring,thymeleaf,Mysql,Spring,Thymeleaf,我是Spring框架和Thymeleaf的初学者。我写了一个代码,可以在网站上显示数据库中的数据。我将我的代码与MySQL数据库集成。不知何故,当我在localhost:8080上查看时,数据根本不会显示在站点上 控制器: @Controller public class HomeController { private TicketService ticketService; @Autowired public void setTicketService(TicketService tic
Spring
框架和Thymeleaf
的初学者。我写了一个代码,可以在网站上显示数据库中的数据。我将我的代码与MySQL
数据库集成。不知何故,当我在localhost:8080
上查看时,数据根本不会显示在站点上
控制器:
@Controller
public class HomeController {
private TicketService ticketService;
@Autowired
public void setTicketService(TicketService ticketService){
this.ticketService = ticketService;
}
@RequestMapping(value = "/index",method = RequestMethod.GET)
public String list(Model model){
model.addAttribute("ticket", ticketService.listAllTickets());
return "index";
}
}
public interface TicketRepository extends CrudRepository<Ticket, Integer> {
}
public interface TicketService {
Iterable<Ticket> listAllTickets();
}
@Service
public class TicketServiceImpl implements TicketService {
private TicketRepository ticketrepository;
@Autowired
public void setProductRepository(TicketRepository ticketRepository) {
this.ticketrepository = ticketRepository;
}
@Override
public Iterable<Ticket> listAllTickets() {
return ticketrepository.findAll();
}
}
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:th="http://www.thymeleaf.org">
<head>
<title>Ticket</title>
<meta charset="UTF-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<style>
table, th, td {
border: 1px solid black;
padding: 1px;
}
</style>
</head>
<body>
<div>
<table>
<tr>
<th>Ticket Station</th>
<th>Ticket Text</th>
<th>Created at </th>
</tr>
<tr th:each="ticket : ${ticket}">
<td th:text="${ticket.ticket_station}">Text ...</td>
<td th:text="${ticket.ticket_text}">Text ...</td>
<td th:text="${ticket.ticket_created_at}">Text ...
</td>
</tr>
</table>
</div>
</body>
</html>
spring.jpa.hibernate.ddl-auto=update
spring.datasource.url=jdbc:mysql://localhost:3306/dol
spring.datasource.username=root
spring.datasource.password=1234
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5Dialect
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.pstw</groupId>
<artifactId>Portal</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>Portal</name>
<description>Demo project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.1.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
道:
@Controller
public class HomeController {
private TicketService ticketService;
@Autowired
public void setTicketService(TicketService ticketService){
this.ticketService = ticketService;
}
@RequestMapping(value = "/index",method = RequestMethod.GET)
public String list(Model model){
model.addAttribute("ticket", ticketService.listAllTickets());
return "index";
}
}
public interface TicketRepository extends CrudRepository<Ticket, Integer> {
}
public interface TicketService {
Iterable<Ticket> listAllTickets();
}
@Service
public class TicketServiceImpl implements TicketService {
private TicketRepository ticketrepository;
@Autowired
public void setProductRepository(TicketRepository ticketRepository) {
this.ticketrepository = ticketRepository;
}
@Override
public Iterable<Ticket> listAllTickets() {
return ticketrepository.findAll();
}
}
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:th="http://www.thymeleaf.org">
<head>
<title>Ticket</title>
<meta charset="UTF-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<style>
table, th, td {
border: 1px solid black;
padding: 1px;
}
</style>
</head>
<body>
<div>
<table>
<tr>
<th>Ticket Station</th>
<th>Ticket Text</th>
<th>Created at </th>
</tr>
<tr th:each="ticket : ${ticket}">
<td th:text="${ticket.ticket_station}">Text ...</td>
<td th:text="${ticket.ticket_text}">Text ...</td>
<td th:text="${ticket.ticket_created_at}">Text ...
</td>
</tr>
</table>
</div>
</body>
</html>
spring.jpa.hibernate.ddl-auto=update
spring.datasource.url=jdbc:mysql://localhost:3306/dol
spring.datasource.username=root
spring.datasource.password=1234
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5Dialect
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.pstw</groupId>
<artifactId>Portal</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>Portal</name>
<description>Demo project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.1.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
服务:
@Controller
public class HomeController {
private TicketService ticketService;
@Autowired
public void setTicketService(TicketService ticketService){
this.ticketService = ticketService;
}
@RequestMapping(value = "/index",method = RequestMethod.GET)
public String list(Model model){
model.addAttribute("ticket", ticketService.listAllTickets());
return "index";
}
}
public interface TicketRepository extends CrudRepository<Ticket, Integer> {
}
public interface TicketService {
Iterable<Ticket> listAllTickets();
}
@Service
public class TicketServiceImpl implements TicketService {
private TicketRepository ticketrepository;
@Autowired
public void setProductRepository(TicketRepository ticketRepository) {
this.ticketrepository = ticketRepository;
}
@Override
public Iterable<Ticket> listAllTickets() {
return ticketrepository.findAll();
}
}
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:th="http://www.thymeleaf.org">
<head>
<title>Ticket</title>
<meta charset="UTF-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<style>
table, th, td {
border: 1px solid black;
padding: 1px;
}
</style>
</head>
<body>
<div>
<table>
<tr>
<th>Ticket Station</th>
<th>Ticket Text</th>
<th>Created at </th>
</tr>
<tr th:each="ticket : ${ticket}">
<td th:text="${ticket.ticket_station}">Text ...</td>
<td th:text="${ticket.ticket_text}">Text ...</td>
<td th:text="${ticket.ticket_created_at}">Text ...
</td>
</tr>
</table>
</div>
</body>
</html>
spring.jpa.hibernate.ddl-auto=update
spring.datasource.url=jdbc:mysql://localhost:3306/dol
spring.datasource.username=root
spring.datasource.password=1234
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5Dialect
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.pstw</groupId>
<artifactId>Portal</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>Portal</name>
<description>Demo project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.1.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
模式:
CREATE DATABASE dol;
CREATE TABLE `dol`.`ticket` (
id INT NOT NULL AUTO_INCREMENT,
ticket_text VARCHAR(100) NOT NULL,
ticket_created_at DATETIME NOT NULL,
ticket_station VARCHAR(250) NOT NULL,
PRIMARY KEY (id));
INSERT INTO `dol`.`ticket` ( `ticket_text`, `ticket_station`,
`ticket_created_at`) VALUES ( 'wow', 'London', '2018-01-13 15:59:26');
Pom.xml:
@Controller
public class HomeController {
private TicketService ticketService;
@Autowired
public void setTicketService(TicketService ticketService){
this.ticketService = ticketService;
}
@RequestMapping(value = "/index",method = RequestMethod.GET)
public String list(Model model){
model.addAttribute("ticket", ticketService.listAllTickets());
return "index";
}
}
public interface TicketRepository extends CrudRepository<Ticket, Integer> {
}
public interface TicketService {
Iterable<Ticket> listAllTickets();
}
@Service
public class TicketServiceImpl implements TicketService {
private TicketRepository ticketrepository;
@Autowired
public void setProductRepository(TicketRepository ticketRepository) {
this.ticketrepository = ticketRepository;
}
@Override
public Iterable<Ticket> listAllTickets() {
return ticketrepository.findAll();
}
}
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:th="http://www.thymeleaf.org">
<head>
<title>Ticket</title>
<meta charset="UTF-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<style>
table, th, td {
border: 1px solid black;
padding: 1px;
}
</style>
</head>
<body>
<div>
<table>
<tr>
<th>Ticket Station</th>
<th>Ticket Text</th>
<th>Created at </th>
</tr>
<tr th:each="ticket : ${ticket}">
<td th:text="${ticket.ticket_station}">Text ...</td>
<td th:text="${ticket.ticket_text}">Text ...</td>
<td th:text="${ticket.ticket_created_at}">Text ...
</td>
</tr>
</table>
</div>
</body>
</html>
spring.jpa.hibernate.ddl-auto=update
spring.datasource.url=jdbc:mysql://localhost:3306/dol
spring.datasource.username=root
spring.datasource.password=1234
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5Dialect
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.pstw</groupId>
<artifactId>Portal</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>Portal</name>
<description>Demo project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.1.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
4.0.0
com.pstw
门户
0.0.1-快照
罐子
门户
SpringBoot的演示项目
org.springframework.boot
spring启动程序父级
2.0.1.1发布
UTF-8
UTF-8
1.8
org.springframework.boot
spring引导启动器数据jpa
org.springframework.boot
弹簧启动装置
org.springframework.boot
SpringBootStarterWeb
mysql
mysql连接器java
运行时
org.springframework.boot
弹簧起动试验
测试
org.springframework.boot
springbootmaven插件
不确定Thymeleaf是否可以处理Iterable。尝试在控制器或服务中传递一个简单的Arraylist
Ticket ticket = new Ticket();
ticket.setTicket....
List<Ticket> tickets = new ArrayList<>(ticket);
model.addAttribute("ticket", tickets);
票证=新票证();
票,票。。。。
列表票证=新阵列列表(票证);
model.addAttribute(“票证”,票证);
如果有效,请将Iterable更改为在服务中列出,然后重试。也许你的MySql数据没有问题也许你应该查看
localhost:8080/索引
而不是localhost:8080
?我已经使用了localhost:8080,它仍然有效。但不知何故,在表中,数据库中的数据并没有显示出来。(localhost:8080/index,我尝试显示错误白色标签错误页)。@Wero您的类路径中有thymeleaf吗?@SangamBelose我想我没有类路径。您使用的构建工具是什么?你是如何看待弹簧罐的。。?检查您的依赖项中是否有thymeleaf jar