# springBootDemo **Repository Path**: wdvc/springBootDemo ## Basic Information - **Project Name**: springBootDemo - **Description**: 本项目是用spring的一系列框架来实现的 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2017-11-07 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # springBootDemo 本项目是用spring的一系列框架来实现的 #具体实现了一下技术: spring cloud 1.spring boot 2.spring security 3.nginx 4.bootstrap 5.redis 6.quartz 7.spring boot 实现webservice和socket 8.dubbo+zookeeper #将用 项目访问需要用高版本的浏览器,对ie低版本的浏览器,样式会展示不出来 项目版本采用的是 spring boot 1.5.6.RELEASE,在使用springboot 1.5.8时会报错,很多类找不到,目前没有找到原因 创建好父级maven项目后,首先先添加好jar包依赖,此时pom.xml中节点会报错,然后按照提示会将项目变成spring boot项目,然后再创建子项目。此时创建的子项目就是springboot项目了。 #注意 1.创建完成后,会自动引入jar包,此时不必clean和install,因为会报错。编写好小例子后可以直接运行。 2.spring boot的启动类(App.java)要放在所有类包的最外层,或者通过注解@ComponentScan去指定要扫描的包,要不然项目中的注解扫描不全,会报错。 3.使用注解@ComponentScan也只能是扫描比启动类所在的包的子包,也就是说必须把启动类放在所有类的最外层(做分布式项目时)。 #记录一个大错 #上面的‘注意’第1条,原本以为就是这样,后来询问大神才知道,是我的父级中的pom.xml配置错误 正确配置: org.springframework.boot spring-boot-starter-parent 1.5.6.RELEASE 而我配置成了 org.springframework.boot spring-boot-starter 1.5.6.RELEASE #粗心说不定就能酿成大祸,做什么事情一定要小心谨慎,认真细心 #遇到的错误 如果报找不到类的错误,并且jar报确定引入,则按照步骤:springBootDemo-web--->Properties-->Deployment Assembly-->Add..-->Java Build Path...-->Maven....将maven的jar包引入项目,然后再运行main方法。 #项目构成 后台用spring boot系列的框架,前端用jquery和bootstrap框架 项目做成动静分离的项目(html页面在外面和项目分开),静态资源放在springBootDemo-html文件夹中 做负载均衡的框架 nginx在项目根目录下有个解压包 #设置启动项 在web的pom.xml中做如下配置: org.springframework.boot spring-boot-maven-plugin true 这样打包出来的jar包就能够直接以 java -jar命令运行了(前提是安装好jdk1.8,并且配置好环境变量)。 #dubbo+zookeeper 项目中的zookeeper也能在windows下运行,解压后,配置一下zoo.cfg中的配置文件,保存后双击bin目录下的zkServer.cmd启动。 dubbo打包出来的war文件dubbo-admin-2.5.7.war我放在jetty服务器下运行(放在tomcat下运行也是一样),解压项目中的jetty-distribution-9.4.7.v20170914.zip,将dubbo-admin-2.5.7.war 放在weapps文件夹下。使用命令在根目录下 java -jar start.jar 就可以启动jetty(或者指定端口java -jar start.jar jetty.port=8888),前提是安装配置好jdk1.8。 注意:zookeeper的默认端口是2181,我在打包dubbo-admin-2.5.7.war的时候,将jetty的端口置为了8080,所以在jetty启动的时候如果不指定端口的话,默认就是8080,项目中使用的端口也是8080,需要修改端口号,使其不冲突。 dubbo中服务者provider里面写需要在dubbo上注册的接口,实现类写在service或者dao层中(或者新建一个子项目只放服务者的实现类)。消费者新创建了一个customer作为启动工程,为了测试方便,将请求的路径在Spring Security中设置成不拦截。 #总结 至此,花费了将近一个月的时间,按照原先的要求,本项目中应该添加的技术和框架基本上已经全部添加进来,并且写了一些简单的小例子。项目中记录一些开发过程遇到的问题和解决方式,在以后的时间里要回头继续熟悉项目中添加的技术以及使用方式。通过本次这么有明确目标的学习和研究,希望在自己以后的开发路上有所帮助。加油