Spring-boot
Maven
IntelliJ Idea
准备好MySQL数据库服务环境,创建测试用的数据库和数据表前提条件:数据库ideadb, 数据表ideaCREATE TABLE `idea` ( `id` char(12) NOT NULL, `name` varchar(125) NOT NULL, `content` varchar(1024) NOT NULL, `content_file` varchar(255) DEFAULT NULL, `img_file` varchar(255) DEFAULT NULL, `author` varchar(50) NOT NULL, `create_date` date NOT NULL, `update_date` date DEFAULT NULL, `version` smallint(2) DEFAULT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
创建Maven spring-boot工程引入spring-boot依赖包parent:spring-boot-starter-parentdependency:spring-boot-starter-we
引入MySQL驱动包和spring jdbctemplate包
在application.properties配置文件中配置MySQL数据库连接信息server.port = 9527spring.datasource.url=jdbc:mysql://127.0.0.1:3306/ideadbspring.datasource.username=hxbspring.datasource.password=hxbspring.datasource.driver-class-name=com.mysql.jdbc.Driverspring.datasource.max-idle=10spring.datasource.max-wait=10000spring.datasource.min-idle=5spring.datasource.initial-size=5
创建数据表idea中的数据对象模型类idea:package fantasy;/** * Created by Administrator on 2017/7/12 0012. */import org.springframework.format.datetime.DateFormatter;import java.util.Date;import java.util.Locale;public class Idea implements java.io.Serializable{ private String id; //Max len =12 private String name; //max len = 125 private String content; private String contentFile; private String imgFile; private String author; private Date createDate; private Date updateDate; private String version; 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 getContent() { return content; } public void setContent(String content) { this.content = content; } public String getContentFile() { return contentFile; } public void setContentFile(String contentFile) { this.contentFile = contentFile; } public String getImgFile() { return imgFile; } public void setImgFile(String imgFile) { this.imgFile = imgFile; } public String getAuthor() { return author; } public void setAuthor(String author) { this.author = author; } public Date getCreateDate() { return createDate; } public void setCreateDate(Date createDate) { this.createDate = createDate; } public Date getUpdateDate() { return updateDate; } public void setUpdateDate(Date updateDate) { this.updateDate = updateDate; } public String getVersion() { return version; } public void setVersion(String version) { this.version = version; } @Override public String toString() { DateFormatter dateFormatter = new DateFormatter(); dateFormatter.setPattern('yyyyMMddHHmmss'); String createDateStr = ''; if(createDate!=null) { createDateStr= dateFormatter.print(createDate, Locale.CHINA); } return 'Idea{' + 'id='' + id + '\'' + ', name='' + name + '\'' + ', content='' + content + '\'' + ', contentFile='' + contentFile + '\'' + ', imgFile='' + imgFile + '\'' + ', author='' + author + '\'' + ', createDate=' + createDateStr + ', updateDate=' + updateDate+ ', version='' + version + '\'' + '}'; }}
创建数据表Idea控制类IdeaController,进行数据的插入以及Spring-boot服务的启动package fantasy;/** * Created by Administrator on 2017/8/8 0008. */import org.springframework.boot.*;import org.springframework.boot.autoconfigure.*;import org.springframework.format.datetime.DateFormatter;import org.springframework.stereotype.*;import org.springframework.web.bind.annotation.*;import java.text.DateFormat;import java.text.ParseException;import java.util.Map.Entry;import java.util.Date;import java.util.Locale;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.jdbc.core.JdbcTemplate;import org.springframework.web.bind.annotation.PathVariable;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;@Controller@EnableAutoConfiguration@RestController@RequestMapping('/idea')public class IdeaController { @Autowired private JdbcTemplate jdbcTemplate; //日期格式yyyyMMddHHmmss @RequestMapping('/new') @ResponseBody Idea addIdea(@RequestParam('id') String id, @RequestParam('name') String name,@RequestParam('content') String content,@RequestParam('author') String author,@RequestParam('createDate') String createDateStr) { Idea idea= new Idea(); idea.setId(id); idea.setName(name); idea.setContent(content); idea.setAuthor(author); try { DateFormatter dateFormatter = new DateFormatter(); dateFormatter.setPattern('yyyyMMddHHmmss'); Date createDate = dateFormatter.parse(createDateStr, Locale.CHINA); idea.setCreateDate(createDate); } catch(ParseException e) { e.printStackTrace(); idea.setCreateDate(new Date()); } System.out.println('idea='+idea); String[] types = { 'java.lang.String', 'java.lang.String', 'java.lang.String','java.lang.String','java.util.Date' }; jdbcTemplate.update('insert into idea (id,name,content,author,create_date) values(?,?,?,?,?)',idea.getId(),idea.getName(),idea.getContent(),idea.getAuthor(),idea.getCreateDate()); return idea; } public static void main(String[] args) throws Exception { SpringApplication.run(IdeaController.class, args); }}
运行IdeaController,进行数据插入测试1)启动IdeaController主类2)在浏览器中发送插入数据的请求http://127.0.0.1:9527/idea/new?id=B001&name=zhandouji&content=Iamagoodman&author=fantasy&createDate=203)在数据库中查看表idea的数据可以看到数据已经插入成功