spring boot 简单mvc demo,Spring boot示例

Spring boot示例。只做了一个查询功能,项目目录结构,使用eclipse建立的spring starter project项目。没做其他改动。



pom.xml

<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>2.0.2.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</artifactId>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.projectlombok</groupId>
			<artifactId>lombok</artifactId>
			<version>1.16.20</version>
		</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-data-jpa</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-thymeleaf</artifactId>
		</dependency>
	</dependencies>

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>

实体类,getter与setter使用的是lombok,有了lombok省的总写一堆浪费时间的getter setter toString 等等。

使用方法见https://blog.csdn.net/tangyaliang11/article/details/80275959

@Data
@Entity(name = "chinese_drug_specification")
public class ChineseDrugSpecification {
	/**
	 * 主键
	 */
	@Id
	@Column(name = "id")
	@GeneratedValue(strategy = GenerationType.AUTO)
	private Integer id;
	/**
	 * 通用名
	 */
	@Column(name = "common_name")
	private String commonName;
	/**
	 * 别名
	 */
	@Column(name = "alias")
	private String alias;
	/**
	 * 全拼
	 */
	@Column(name = "fullcn_name")
	private String fullcnName;
	/**
	 * 英文名
	 */
	@Column(name = "eng_name")
	private String engName;
	/**
	 * 来源
	 */
	@Column(name = "source")
	private String source;
	/**
	 * 性状
	 */
	@Column(name = "characters")
	private String characters;
	/**
	 * 炮制
	 */
	@Column(name = "processing")
	private String processing;
	/**
	 * 性味
	 */
	@Column(name = "sexual")
	private String sexual;
	/**
	 * 归经
	 */
	@Column(name = "flavour")
	private String flavour;
	/**
	 * 鉴别
	 */
	@Column(name = "identify")
	private String identify;
	/**
	 * 检查
	 */
	@Column(name = "inspection")
	private String inspection;
	/**
	 * 浸出物
	 */
	@Column(name = "extract")
	private String extract;
	/**
	 * 含量测定
	 */
	@Column(name = "content_determination")
	private String contentDetermination;
	/**
	 * 功效
	 */
	@Column(name = "fun")
	private String fun;
	/**
	 * 用法用量
	 */
	@Column(name = "usages")
	private String usages;
	/**
	 * 注意事项
	 */
	@Column(name = "attention")
	private String attention;
	/**
	 * 贮藏
	 */
	@Column(name = "storage")
	private String storage;
	/**
	 * 文献来源
	 */
	@Column(name = "literature")
	private String literature;
	/**
	 * 
	 */
	@Column(name = "medicinal")
	private Integer medicinal;
	/**
	 * 
	 */
	@Column(name = "taste")
	private String taste;
	/**
	 * 
	 */
	@Column(name = "tropism")
	private String tropism;
	/**
	 * 
	 */
	@Column(name = "effect")
	private String effect;
}

仓库

public interface ChineseDrugRepository extends Repository<ChineseDrugSpecification, Integer> {
	ChineseDrugSpecification findById(Integer id);
}

控制层

@Controller
@RequestMapping("/")
public class ChineseDrugController {
	@Autowired
	private ChineseDrugRepository readingListRepository;

	@RequestMapping(value = "/{id}", method = RequestMethod.GET)
	public String readersBooks(@PathVariable("id") Integer id, Model model) {
		ChineseDrugSpecification chineseDrug = readingListRepository.findById(id);
		if (chineseDrug != null) {
			model.addAttribute("chineseDrug", chineseDrug);
		}
		return "readingList";
	}
}

页面。名称叫做readingList.html,页面技术采用的是thymeleaf

<!DOCTYPE html>
<html>
      <head>
      	<meta name="viewport" content="width=device-width, initial-scale=1">
      	<link rel="stylesheet" href="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css" />
      	<script src="http://code.jquery.com/jquery-2.0.1.min.js"></script>
      	<script src="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>
        <title>Reading List</title>
        <link rel="stylesheet" th:href="@{/style.css}"></link>
      </head>
<body>
	<h2>Your Reading List</h2>
	<div th:unless="${#lists.isEmpty(chineseDrug)}">
		<dl th:each="chinese : ${chineseDrug}">
			<dt class="bookHeadline">
				<span th:text="${chinese}">Title</span>
			</dt>
		</dl>
	</div>
</body>
</html>

css 

body {
	background-color: #cccccc;
	font-family: arial, helvetica, sans-serif;
}

.bookHeadline {
	font-size: 12pt;
	font-weight: bold;
}

.bookDescription {
	font-size: 10pt;
}

label {
	font-weight: bold;
}

application.yml配置

spring:
  datasource: 
      username: root
      password: 123
      url: jdbc:mysql://192.168.1.6:3306/engine
      driver-class-name: com.mysql.jdbc.Driver

sql语句 ,注意您的mysql数据库字符集避免乱码。

CREATE USER engine;
create table chinese_drug_specification
(
	id int not null primary key,
	common_name varchar(200) null,
	alias varchar(200) null,
	fullcn_name varchar(100) null,
	eng_name varchar(100) null,
	source varchar(2000) null,
	characters varchar(2000) null,
	processing varchar(2000) null,
	sexual varchar(100) null,
	flavour varchar(100) null,
	medicinal int null,
	taste varchar(100) null,
	tropism varchar(100) null,
	effect int null,
	fun varchar(400) null,
	usages varchar(200) null,
	attention varchar(200) null,
	literature varchar(50) null,
	identify varchar(2000) null,
	inspection varchar(2000) null,
	extract varchar(2000) null,
	storage varchar(500) null,
	content_determination text null
)
;
INSERT INTO engine.chinese_drug_specification (id, common_name, alias, fullcn_name, eng_name, source, characters, processing, sexual, flavour, medicinal, taste, tropism, effect, fun, usages, attention, literature, identify, inspection, extract, storage, content_determination) VALUES (1, '阿胶', '盆覆胶、驴皮胶、', 'Ejiao', 'ASINI CORII COLLA', '本品为马科动物驴Equus asinus L.的干燥皮或鲜皮经煎煮、浓缩制成的固体胶。', '本品呈长方形块、方形块或丁状。棕色至黑褐色,有光泽。质硬而脆,断面光亮,碎片对光照视呈棕色半透明状。气微,味微甘。', '阿胶  捣成碎块。<br/>    阿胶珠  取阿胶,烘软,切成lcm左右的丁,照烫法(附录ⅡD)用始粉烫至成珠,内无溏心时,取出,筛去蛤粉,放凉。<br/>    本品呈类球形。表面棕黄色或灰白色,附有白色粉末。体轻,质酥,易碎。断面中空或多孔状,淡黄色至棕色。气微,味微甜。', '甘、平。', '归肺、肝、肾经。', 322, '336、', '327、328、330、', 377, '补血滋阴,润燥,止血。用于血虚萎黄,眩晕心悸,肌痿无力,心烦不眠,虚风内动,肺燥咳嗽,劳嗽咯血,吐血尿血,便血崩漏,妊娠胎漏。', '3~9g。烊化兑服。', null, '中国药典2010版', null, null, null, null, null);

项目启动类

@SpringBootApplication
public class DrugApplication {
	public static void main(String[] args) {
		SpringApplication.run(DrugApplication.class, args);
	}
}

在浏览器地址栏输入:http://127.0.0.1:8080/1


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值