当前位置: 首页 > news >正文

php网站开发总结推广普通话手抄报简单

php网站开发总结,推广普通话手抄报简单,遵义城乡建设网站,泰拳图片做网站用之前接手的一个项目中,用SpringBoot快速搭建小型的restful服务,很方便,加快了不小的开发效率。 第一次将SpringBoot应用到实际项目中,也踩了不少的坑,作为新人收获不小。 SpringBoot的介绍就不说了,百度很多…

    之前接手的一个项目中,用SpringBoot快速搭建小型的restful服务,很方便,加快了不小的开发效率。

    第一次将SpringBoot应用到实际项目中,也踩了不少的坑,作为新人收获不小。

    SpringBoot的介绍就不说了,百度很多,复制粘贴过来也没什么意义。

    一、环境

      构建工具:Maven(怎么用请百度)

      JDK:这里使用1.8

      IDE:idea

    二、POM.XML

<?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.myspringboot.QuickService</groupId><artifactId>QuickService</artifactId><version>ver_20170811</version><packaging>jar</packaging><name>QuickService</name><description>SpringBoot quick service</description><!-- Inherit defaults from Spring Boot --><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>1.5.2.RELEASE</version><relativePath/></parent><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><spring.version>4.3.6.RELEASE</spring.version><start-class>com.myspringboot.QuickService.QuickServiceApplication</start-class><java.version>1.8</java.version></properties><!-- Package as an executable JAR --><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>1.5.2.RELEASE</version><executions><execution><goals><goal>repackage</goal></goals></execution></executions></plugin><plugin><artifactId>maven-compiler-plugin</artifactId><configuration><source>1.8</source><target>1.8</target></configuration></plugin></plugins><!-- 这里是为了添加自己提供的jar包 --><resources><resource><directory>${basedir}/src/lib</directory><targetPath>BOOT-INF/lib/</targetPath><includes><include>**/*.jar</include></includes></resource><resource><directory>${basedir}/src/main/resources</directory><filtering>true</filtering><includes><include>**/application*.yml</include><include>**/application*.yaml</include><include>**/application*.properties</include></includes></resource><resource><directory>${basedir}/src/main/resources</directory><excludes><exclude>**/application*.yml</exclude><exclude>**/application*.yaml</exclude><exclude>**/application*.properties</exclude></excludes></resource></resources></build><dependencies><!-- 自己提供的jar包,放在了src/lib目录下,根据实际情况而定 --><dependency><groupId>src.lib</groupId><artifactId>alarm</artifactId><version>1.0.0</version><scope>system</scope><systemPath>${project.basedir}/src/lib/xxxx.jar</systemPath></dependency><!-- spring boot --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><!--SpringBoot 使用 JDBCTemplate 引用下面这个包才会自动注入--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-jdbc</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-configuration-processor</artifactId><optional>true</optional></dependency><!-- spring boot --><dependency><groupId>org.testng</groupId><artifactId>testng</artifactId><version>6.10</version></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version></dependency><dependency><groupId>aopalliance</groupId><artifactId>aopalliance</artifactId><version>1.0</version></dependency><dependency><groupId>com.mchange</groupId><artifactId>c3p0</artifactId><version>0.9.5.1</version></dependency><dependency><groupId>commons-collections</groupId><artifactId>commons-collections</artifactId><version>3.1</version></dependency><dependency><groupId>commons-dbcp</groupId><artifactId>commons-dbcp</artifactId><version>1.2.1</version></dependency><dependency><groupId>org.apache.commons</groupId><artifactId>commons-exec</artifactId><version>1.3</version></dependency><dependency><groupId>commons-io</groupId><artifactId>commons-io</artifactId><version>2.4</version></dependency><dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId><version>3.3.2</version></dependency><dependency><groupId>commons-logging</groupId><artifactId>commons-logging</artifactId><version>1.2</version></dependency><dependency><groupId>commons-net</groupId><artifactId>commons-net</artifactId><version>2.0</version></dependency><dependency><groupId>commons-pool</groupId><artifactId>commons-pool</artifactId><version>1.6</version><!-- ԭ±¾ʹԃµŊű.2°汾 --></dependency><dependency><groupId>dom4j</groupId><artifactId>dom4j</artifactId><version>1.6.1</version></dependency><dependency><groupId>com.google.guava</groupId><artifactId>guava</artifactId><version>18.0</version></dependency><dependency><groupId>jaxen</groupId><artifactId>jaxen</artifactId><version>1.1.1</version></dependency><dependency><groupId>org.jvnet.opendmk</groupId><artifactId>jmxremote_optional</artifactId><version>1.0_01-ea</version></dependency><dependency><groupId>javax.management</groupId><artifactId>jmxri</artifactId><version>1.2.1</version><type>pom</type></dependency><dependency><groupId>com.sun.jdmk</groupId><artifactId>jmxtools</artifactId><version>1.2.1</version><type>pom</type></dependency><dependency><groupId>org.apache.logging.log4j</groupId><artifactId>log4j-api</artifactId><version>2.3</version></dependency><dependency><groupId>org.apache.logging.log4j</groupId><artifactId>log4j-core</artifactId><version>2.3</version></dependency><dependency><groupId>com.mchange</groupId><artifactId>mchange-commons-java</artifactId><version>0.2.10</version></dependency><dependency><groupId>ojdbc</groupId><artifactId>ojdbc</artifactId><version>6</version></dependency><dependency><groupId>org.fusesource</groupId><artifactId>sigar</artifactId><version>1.6.4</version></dependency><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId><version>1.7.12</version></dependency><dependency><groupId>javax.xml.bind</groupId><artifactId>jaxb-api</artifactId><version>2.2.12</version></dependency><dependency><groupId>com.sun.xml.bind</groupId><artifactId>jaxb-impl</artifactId><version>2.2.11</version></dependency><!-- spring --><dependency><groupId>org.springframework</groupId><artifactId>spring-aop</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-beans</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-context-support</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-expression</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-jdbc</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-jms</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-orm</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-tx</artifactId><version>${spring.version}</version></dependency></dependencies><!-- Allow access to Spring milestones and snapshots --><!-- (you don't need this if you are using anything after 0.5.0.RELEASE) --><repositories><repository><id>spring-snapshots</id><url>http://repo.spring.io/snapshot</url><snapshots><enabled>true</enabled></snapshots></repository><repository><id>spring-milestones</id><url>http://repo.spring.io/milestone</url><snapshots><enabled>true</enabled></snapshots></repository><repository><id>spring-releases</id><url>https://repo.spring.io/libs-release</url></repository></repositories><pluginRepositories><pluginRepository><id>spring-releases</id><url>https://repo.spring.io/libs-release</url></pluginRepository><pluginRepository><id>central</id><name>Maven plugin</name><url>htpp://repo1.maven.org/maven2</url><layout>default</layout><snapshots><enabled>true</enabled></snapshots><releases><enabled>false</enabled></releases></pluginRepository><pluginRepository><id>spring-snapshots</id><url>http://repo.spring.io/snapshot</url></pluginRepository><pluginRepository><id>spring-milestones</id><url>http://repo.spring.io/milestone</url></pluginRepository></pluginRepositories></project>

    由于项目需求用到了不少依赖,全贴出来了,根据自己的情况进行调整吧。

  三、主要配置

    1.  QuickServiceApplication.java

 1 package com.myspringboot.QuickService;
 2 
 3 import org.apache.commons.dbcp.BasicDataSource;
 4 import org.apache.logging.log4j.LogManager;
 5 import org.apache.logging.log4j.Logger;
 6 import org.springframework.beans.factory.annotation.Autowired;
 7 import org.springframework.boot.SpringApplication;
 8 import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
 9 import org.springframework.context.annotation.Bean;
10 import org.springframework.context.annotation.ComponentScan;
11 import org.springframework.context.annotation.Configuration;
12 import org.springframework.core.env.Environment;
13 
14 import javax.sql.DataSource;
15 
16 @EnableAutoConfiguration
17 @ComponentScan
18 @Configuration
19 public class QuickServiceApplication {
20 
21     public static void main(String[] args) {
22         Logger logger = LogManager.getLogger(QuickServiceApplication.class.getName());
23 
24 
25         System.out.println("*****************************************************");
26         System.out.println("************QuickService***********");
27         System.out.println("*****************************************************");
28 
29         logger.info("===========>QuickService<===========");
30         SpringApplication.run(QuickServiceApplication.class, args);
31 
32     }
33 
34     // 配置数据库源
35     @Autowired
36     private Environment env;
37 
38     @Bean
39     public DataSource dataSource() {
40 
41         BasicDataSource dataSource = new BasicDataSource();
42 
43         dataSource.setUrl(env.getProperty("spring.datasource.url"));
44         dataSource.setUsername(env.getProperty("spring.datasource.username"));
45 
46         // 解密前的数据库密码
47         String desPwd = env.getProperty("spring.datasource.password").trim();
48 
49         System.out.println("username:" + env.getProperty("spring.datasource.username") +
50                             ", pwd:" + desPwd + ", url:" + env.getProperty("spring.datasource.url"));
51 
52         // 解密数据库密码
53         String password = NLDes.decrypt(desPwd);
54 
55         System.out.println("after decrypt, password: " + password);
56 
57         dataSource.setDriverClassName(env.getProperty("spring.datasource.driver-class-name"));
58         dataSource.setPassword(password);
59 
60         return dataSource;
61 
62     }
63 }

   注意53行,这是对application.properties文件中数据库的密码进行解密操作,这个根据个人情况修改。

   2.   Restful风格的服务接口

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import org.testng.collections.Lists;import java.util.List;/*** 服务接口* */
@RestController
public class CloudService {private Logger logger = LogManager.getLogger(CloudService.class.getName());@Autowiredprivate Handler handler;/*** 处理外部http请求,将请求体的Json字符串转化为实体** @return*/@RequestMapping(value = "/fm", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")public List<ResultModel> dealFmRequest(@RequestBody CloudModel cloudModel) {// 处理结果实体List<ResultModel> resultModelList = Lists.newArrayList();.....return resultModelList;}}

   加个@RestController注解即可。另外有用到其它类的对象,可用@Autowired注解进行注入,注意的要注入的类必须有@Component注解,否则Spring将无法发现并装载指定的类。

   我这边由于需求,需要请求体的json字符串自动转换成实体, 注意字符编码问题以及Json到实体Bean的结构映射问题。

   注意,CloudService.java 与 QuickServiceApplication.java处于同一个包内

   3.   application.properties

spring.datasource.url=jdbc:oracle:thin:@localhost:1521:testdb
spring.datasource.username=mydb
spring.datasource.password=6FD549E05C528370
spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDriver
server.port=8181

   log4j配置文件与application.properties文件都放在resource文件夹下。

 

  四、启动脚本

    提供个启动脚本给各位参考

 1 #!/usr/bin/env bash
 2 cd /.../QuickService
 3 
 4 UCAGENT=.
 5 UCAGENT_CP="."
 6 
 7 for jarfile in $UCAGENT/lib/*.jar; do
 8     UCAGENT_CP=$UCAGENT_CP:$jarfile 
 9 done
10 
11 echo $UCAGENT_CP
12 
13 java -Xbootclasspath/a:$UCAGENT_CP -jar QuickService.jar --spring.config.location=/..../application.properties > /dev/null &
14 
15 echo "start QuickService ok"

    第一行指定了jar包所在的路径,13行运行时,用外部application.properties文件覆盖了jar包内部的配置文件,毕竟要打开jar包修改太麻烦了。

    只罗列了部分步骤,还有好多细节木有提供,不过网上教程也挺多,个人也比较懒,不再赘述。

转载于:https://www.cnblogs.com/zsfh/p/7396296.html

http://www.lbrq.cn/news/2752759.html

相关文章:

  • 做计量检定的网站搜索引擎整合营销
  • 洛阳市App网站开发公司南京网站设计公司
  • 做网站的尺寸搜索引擎优化的特点
  • wordpress a5成都seo优化排名推广
  • wordpress插件不显示福州seo网络推广
  • 网站图片属性是什么不受限制的搜索浏览器
  • 手机微网站建设案例及报告网络营销未来有哪些发展趋势
  • 建设公安网站的申请网络推广引流
  • 济南商城网站建设多少钱整站排名优化品牌
  • 免费网站建设域名网站开发平台有哪些
  • 专做banner的网站网络推广员为什么做不长
  • 如何用本机电脑做网站服务器线上营销渠道主要有哪些
  • 同一个公司可以做几个网站今日疫情最新消息
  • 方便做流程图的网站营销型网站建设怎么做
  • 网站搜索引擎优化案例网站制作出名的公司
  • 杭州营销网站建设平台国产长尾关键词拘挖掘
  • 佛山市网站建设公司直销的八大课程
  • 自己怎么做网站建设网页模板免费下载
  • 网站备案完成后接下来怎么做购物网站大全
  • 内网网站开发功能模块seo关键词排名优化怎样
  • 芯片商城网站建设推广宣传
  • 重庆奉节网站建设公司推荐怎样做公司网站推广
  • 做网站都需要哪些知识网站制作费用一览表
  • 做渔具最大的外贸网站qq群排名优化软件
  • 做网站后期费用百度站长平台论坛
  • 花生壳做的网站十大免费cms建站系统介绍
  • 做网站的工作叫什么网络推广与推广
  • 如何做小程序平台网络seo排名
  • 网站建设业务员提成重大军事新闻最新消息
  • 李沧网站建设电话重庆森林台词
  • Spark03-RDD02-常用的Action算子
  • Diamond基础2:开发流程之LedDemo
  • 【MySQL学习|黑马笔记|Day7】触发器和锁(全局锁、表级锁、行级锁、)
  • 计算机存储器分类和层次结构详解
  • 云原生俱乐部-RH124知识点总结(1)
  • MySQL快速恢复数据的N种方案完全教程