您现在的位置是:主页 > news > 陕西做教学成果网站的公司/电子商务网站建设流程

陕西做教学成果网站的公司/电子商务网站建设流程

admin2025/6/2 6:30:00news

简介陕西做教学成果网站的公司,电子商务网站建设流程,2345浏览器电脑版首页,南沙网站建设公司概述 虽然说springBoot讲究“约定大于配置”,但有时或多或少也需要一些额外的配置项,比如说数据库配置,队列配置,缓存配置等等。springBoot的全局配置文件为application.properties 自定义配置 application.properties&#xff0c…

陕西做教学成果网站的公司,电子商务网站建设流程,2345浏览器电脑版首页,南沙网站建设公司概述 虽然说springBoot讲究“约定大于配置”,但有时或多或少也需要一些额外的配置项,比如说数据库配置,队列配置,缓存配置等等。springBoot的全局配置文件为application.properties 自定义配置 application.properties&#xff0c…

概述

  虽然说springBoot讲究“约定大于配置,但有时或多或少也需要一些额外的配置项,比如说数据库配置,队列配置,缓存配置等等。springBoot的全局配置文件为application.properties

自定义配置

application.properties,一些常量配置也可以写在这里

 

date.year = 2019
date.month = 7
date.day = 29
date.hour = 10
date.minute = 29

 

通过注解 “@Value(${config.name})”绑定到你想要的属性上面去

package com.xmlxy.firstspringbootproject;import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
/*测试类 2019-7-29*/
@RestController
public class DemoController
{@Value("${date.year}")String year;@Value("${date.month}")String mouth;@Value("${date.day}")String day;@Value("${date.hour}")String hour;@Value("${date.minute}")String minute;@RequestMapping(value = "/demo",method = RequestMethod.GET)public String demo(){return "Hello SpringBoot";}@RequestMapping(value = "/demo1",method = RequestMethod.GET)public String demo1(){return year + "." + mouth + "." + day + "  " + hour + ":" + minute;}
}

通过 127.0.0.1:8080/demo1 访问,可以看到我们配置中的值被绑定到属性中去了

但是我们会发现,如果需要绑定的值很多,一个个绑定会累到死,所以springBoot提供绑定一个对象bean,新建Config.java

package com.xmlxy.bean;import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Component;@Component
@ConfigurationProperties(prefix = "date")
@Data
public class Config {private String year;private String month;private String day;private String hour;private String minute;}

如果IDEA没配置lombok可以百度配置一下,这样就省得写get and set的一些函数,然后在改下DemoController.class类

package com.xmlxy.firstspringbootproject;import com.xmlxy.bean.Config;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
/*测试类 2019-7-29*/
@ComponentScan("com.xmlxy.bean")
@RestController
public class DemoController
{@Autowiredprivate Config config;@RequestMapping(value = "/demo",method = RequestMethod.GET)public String demo(){return "Hello SpringBoot";}@RequestMapping(value = "/demo1",method = RequestMethod.GET)public String demo1(){return config.getYear() + "." + config.getMonth() + "." + config.getDay() + "  " + config.getHour() + ":" + config.getMinute();}
}

输出的结果与上面一致。而且在配置文件中各个属性的参数是可以互相引用的

application.properties

date.year = 2019
date.month = 7
date.day = 29
date.hour = 14
date.minute = 54
date.desc = ${date.year}.${date.month}.${date.day} ${date.hour}:${date.minute}

DemoController.java新添加一个例

package com.xmlxy.firstspringbootproject;import com.xmlxy.bean.Config;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
/*测试类 2019-7-29*/
@ComponentScan("com.xmlxy.bean")
@RestController
public class DemoController
{@Autowiredprivate Config config;@Value("${date.desc}")private String desc;@RequestMapping(value = "/demo",method = RequestMethod.GET)public String demo(){return "Hello SpringBoot";}@RequestMapping(value = "/demo1",method = RequestMethod.GET)public String demo1(){return config.getYear() + "." + config.getMonth() + "." + config.getDay() + "  " + config.getHour() + ":" + config.getMinute();}@RequestMapping(value = "/demo2",method = RequestMethod.GET)public String demo2(){return desc;}
}

访问 http://127.0.0.1:8080/demo2

随机数

通过${random}来产生随机数,包括int值,long等,支持属性的随机值。

date.year = 2019
date.month = 7
date.day = 29
date.hour = 14
date.minute = 54
date.desc = ${date.year}.${date.month}.${date.day} ${date.hour}:${date.minute}
date.value = ${random.int}

DemoController.java

package com.xmlxy.firstspringbootproject;import com.xmlxy.bean.Config;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
/*测试类 2019-7-29*/
@ComponentScan("com.xmlxy.bean")
@RestController
public class DemoController
{@Autowiredprivate Config config;@Value("${date.desc}")private String desc;@Value("${date.value}")private int value;@RequestMapping(value = "/demo",method = RequestMethod.GET)public String demo(){return "Hello SpringBoot";}@RequestMapping(value = "/demo1",method = RequestMethod.GET)public String demo1(){return config.getYear() + "." + config.getMonth() + "." + config.getDay() + "  " + config.getHour() + ":" + config.getMinute();}@RequestMapping(value = "/demo2",method = RequestMethod.GET)public String demo2(){return desc;}@RequestMapping(value = "/demo3",method = RequestMethod.GET)public String demo3(){return String.valueOf(value);}}

访问 http://127.0.0.1:8080/demo3 得

自定义配置文件

 引入自定义的配置文件jdbc.properties

jdbc.url = 10.105.9.119

将jdbc的配置文件引入

package com.xmlxy.firstspringbootproject;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.context.annotation.PropertySource;@SpringBootApplication
@PropertySource(value = "classpath:jdbc.properties",encoding = "utf-8")
public class FirstSpringbootProjectApplication {public static void main(String[] args) {SpringApplication.run(FirstSpringbootProjectApplication.class, args);}}

测试获取下url属性值

package com.xmlxy.firstspringbootproject;import com.xmlxy.bean.Config;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
/*测试类 2019-7-29*/
@ComponentScan("com.xmlxy.bean")
@RestController
public class DemoController
{@Autowiredprivate Config config;@Value("${date.desc}")private String desc;@Value("${date.value}")private int value;@Value("${jdbc.url}")private String url;@RequestMapping(value = "/demo",method = RequestMethod.GET)public String demo(){return "Hello SpringBoot";}@RequestMapping(value = "/demo1",method = RequestMethod.GET)public String demo1(){return config.getYear() + "." + config.getMonth() + "." + config.getDay() + "  " + config.getHour() + ":" + config.getMinute();}@RequestMapping(value = "/demo2",method = RequestMethod.GET)public String demo2(){return desc;}@RequestMapping(value = "/demo3",method = RequestMethod.GET)public String demo3(){return String.valueOf(value);}@RequestMapping(value = "/demo4",method = RequestMethod.GET)public String demo4(){return url;}
}

 jdbc连接数据库

pom.xml引入jdbc依赖支撑

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId>
</dependency>

application.properties

date.year = 2019
date.month = 7
date.day = 29
date.hour = 14
date.minute = 54
date.desc = ${date.year}.${date.month}.${date.day} ${date.hour}:${date.minute}
date.value = ${random.int}
spring.datasource.url = jdbc:mysql://10.105.9.119:3306/hwc_db?useUnicode=true&characterEncoding=UTF-8&useSSL=false
spring.datasource.driver-class-name = com.mysql.cj.jdbc.Driver
spring.datasource.username = root
spring.datasource.password = DsideaL147258369

dao接口

TestDao.java

package com.xmlxy.dao;import com.xmlxy.bean.TestData;public interface TestDao
{int add(TestData testDao);
}

TestDaoImp.java

package com.xmlxy.dao;import com.xmlxy.bean.TestData;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate;
import org.springframework.stereotype.Repository;import java.util.HashMap;
import java.util.Map;@Repository
public class TestDaoImp implements TestDao
{@Autowiredprivate NamedParameterJdbcTemplate jdbcTemplate;@Overridepublic int add(TestData testData) {String sql = "INSERT t_hwc_db(name,age) VALUES(:name,:age)";Map<String,Object> param = new HashMap<>();System.out.printf("本次插入的值===>" + testData.getName() + ",年龄为==>" + testData.getAge());param.put("name",testData.getName());param.put("age",testData.getAge());return jdbcTemplate.update(sql,param);}
}

访问接口测试

package com.xmlxy.firstspringbootproject;import com.xmlxy.bean.Config;
import com.xmlxy.bean.TestData;
import com.xmlxy.dao.TestDaoImp;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
/*测试类 2019-7-29*/
@ComponentScan("com.xmlxy.bean")
@ComponentScan("com.xmlxy.dao")
@RestController
public class DemoController
{@Autowiredprivate Config config;@Value("${date.desc}")private String desc;@Value("${date.value}")private int value;@Value("${jdbc.url}")private String url;@Autowiredprivate TestDaoImp testDaoImp;@RequestMapping(value = "/demo",method = RequestMethod.GET)public String demo(){return "Hello SpringBoot";}@RequestMapping(value = "/demo1",method = RequestMethod.GET)public String demo1(){return config.getYear() + "." + config.getMonth() + "." + config.getDay() + "  " + config.getHour() + ":" + config.getMinute();}@RequestMapping(value = "/demo2",method = RequestMethod.GET)public String demo2(){return desc;}@RequestMapping(value = "/demo3",method = RequestMethod.GET)public String demo3(){return String.valueOf(value);}@RequestMapping(value = "/demo4",method = RequestMethod.GET)public String demo4(){return url;}@RequestMapping(value = "/demo5",method = RequestMethod.GET)public String demo5(){TestData testData = new TestData();testData.setName("ipad");testData.setAge(18);testDaoImp.add(testData);return "插入成功";}}

访问 http://127.0.0.1:8080/demo5 查看数据库,可以发现数据已经插入

 

转载于:https://www.cnblogs.com/dslx/p/11251293.html