- 博客(61)
- 收藏
- 关注
原创 Spring Session 多服务Session共享
在新项目中需要开发单点登录功能,单点登录服务端提供方使用的是CAS技术,是根据Session来判断用户是否完成了登录操作的。Session是保存在服务器本地内存中的,而我的项目是需要多服务部署的,这就意味着会部署在不同的服务器中,那不同的服务器之间共享Session就是个问题了,因为根据Nginx负载均衡的策略是会把前端请求发送到不同服务器的。那Spring 给我们提供了一个现有的解决方法 Spring Session。看完这两张图就很好理解它的架构思想了,也告知需要依赖其他存储系统。
2024-07-09 15:35:42
335
原创 IDEA Debug 断点
今天在工作发现有些新入职的小伙伴们,在调试程序时不是很会正确使用IDEA所提供Breakpoints(断点),这里就简单的介绍下比较常用的功能。快捷键:切换行断点:Ctrl F8编辑断点属性:Ctrl Shift F8。
2024-07-02 16:36:15
422
原创 Springboot JackSon 使用 反序列化
错误信息的意思就是字符串转List错误,说明接口参数中这个属性的值是字符串,无法赋值给List集合。那有什么方法解决呢?PetDeserializer.class 需要自己实现。
2024-07-01 11:38:00
469
原创 Java 反射获取对象属性中泛型类属性信息
例: class xxxx {private List<Person> persons;}获取 Person 中的field等等具体代码:Field[] declaredFields = xxxx.class.getDeclaredFields();for (Field declaredField : declaredFields) { declaredField.setAccessible(true);//主要代码 Ty...
2022-04-12 17:53:25
796
1
原创 sharding-JDBC 分库分表
演示项目数据库主从结构,读写分离,主数据库负责写入,从数据库负责读出.数据库设计数据库设计 PRODUCT_DB 数据库进行水平分库PRODUCT_DB1,PRODUCT_DB2 商品信息表进行垂直拆分,商品信息表和商品描述表 商品信息表和商品描述表进行水平分表,商品信息表1,商品描述表1,商品信息表2,商品描述表2 PRODUCT_DB ,STORE_DB 进行业务模块拆分,进行垂直分库 拥有公共表地理区域表(地理区域表需要在每个数据库中创建,shardingJDBC会同时维护所.
2020-09-21 15:12:35
210
1
原创 Apache CXF WebService (RestFul 风格) SpringBoot 服务端(5)
在pom.xml中添加依赖<dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-spring-boot-starter-jaxrs</artifactId> <version>${cxf.version}</version></dependency>创建接口类@Path("/sayHello")p.
2020-08-20 18:24:44
331
原创 Apache CXF WebService (web 服务框架) maven 插件 通过wsdl文件生成客户端代码(4)
插件名称:cxf-codegen-plugin在pom.xml插件配置中添加<plugin> <groupId>org.apache.cxf</groupId> <artifactId>cxf-codegen-plugin</artifactId> <version>${cxf.version}</version>
2020-08-19 14:26:31
287
原创 Apache CXF WebService (web 服务框架) maven 插件 生成wsdl文件(3)
插件名称:cxf-java2ws-plugin在pom.xml,插件配置中添加 <plugin> <groupId>org.apache.cxf</groupId> <artifactId>cxf-java2ws-plugin</artifactId> <version>${cxf.version}</version>
2020-08-19 14:08:46
308
原创 Apache CXF WebService (web 服务框架) 集成到SpringBoot(2)
官网实例地址 http://cxf.apache.org/docs/sample-projects.html springboot实例https://github.com/apache/cxf/tree/master/distribution/src/main/release/samples/jaxws_spring_boot 在pom.xml中添加依赖 <dependency> <groupId>or..
2020-08-19 13:58:30
127
原创 Apache CXF WebService (web 服务框架) (1)
官网地址CXF 官网URLCXF Github 官方实例gitHub实例官网Docs地址官方文档
2020-08-11 14:19:16
101
原创 Spring,SpringBoot 捕获不到SQLException
在cath中是捕获不到SQLException错误的但是可捕获到DataAccessException通过DataAccessException.getCause()获得错误原因但是获取不到error code如果想获得错误代码,可以SQLException se = (SQLException)e.getCause();se.getErrorCode();e.getCause()获得Throwable强转为SQLException具体错误代码所对应的错误详细,请查看官...
2020-07-21 14:28:50
2822
4
原创 Dubbo 动态配置中心
动态配置中心需要依靠Dubbo的管理控制台,如何搭建控制台请看下方连接 https://dubbo.apache.org/zh-cn/docs/admin/introduction.html 修改Dubbo Admin项目中的dubbo-admin-server/src/main/resources/application.properties的内容 #配置中心admin.config-center=zookeeper://127.0.0.1:2181#注册中心admin.regis...
2020-07-06 15:41:35
338
原创 Zookeeper 安装手册
https://dubbo.apache.org/zh-cn/docs/admin/install/zookeeper.html 安装完成启动后,如果连接时报:zookeeper not connected错误 其中有可能的原因是连接超时,可将timeout配置进行调整 比如:
2020-07-06 14:38:19
124
原创 Nacos 部署
可根据官网快速开始 https://nacos.io/zh-cn/docs/quick-start.html 根据官网选择不同的方式部署,因为是自己测试所以我选择的是直接下载压缩包 可通过 wget命令下载,也可以先下载到本地上传到服务器 unzip nacos-server-$version.zip 或者 tar -xvf nacos-server-$version.tar.gz进行解压 解压完成后可参考官网部署手册进行部署 https://nacos.io/zh-cn/docs/dep...
2020-07-06 14:15:32
429
原创 dubbo2.7+ 方法级别的注解配置
xml配置的方式 <!-- 声明需要暴露的服务接口 --> <dubbo:service interface="com.joe.service.UserService" ref="userServiceImpl" > <dubbo:method name="getUserById" timeout="2000"></dubbo:method> </dubbo:service>注解配置@Dubb...
2020-07-03 13:53:41
1601
原创 java sql语句无错误,但是执行多条sql语句时,抛出java.sql.SQLSyntaxErrorException
本人连接的是mysql数据库,检查sql语法并无错误。而此处为 多条sql语句,报错信息指向分号后的第二条语句。判断可能是连接的datasource默认只允许执行单个sql语句。在连接datasource的url后面增加参数allowMultiQueries=trueurl: jdbc:mysql://localhost:3306/node_seal?serverTimezone=UTC&zeroDateTimeBehavior=round&allowMultiQueries=tr
2020-06-16 21:35:30
639
1
原创 Java enum枚举 数据转换
//枚举类package com.middol.supplieraudit.enums;public enum AuditStatusEnums { DFP(0,"待分配"), DSH(1,"待审核"), YSH(2,"已审核"); private Integer value; private String msg; AuditStatusEnums(Integer value,String msg){ this.value .
2020-05-13 20:16:40
1460
1
原创 Mybatis-通用mapper
通用mapper文档地址提供了逆向工程(将数据库中的表自动生成entity,mapperinterface,mapper XML)又称代码自动生成 代码自动生成,可参考此链接
2019-12-12 17:43:38
106
原创 p6spy 非常典型 启用SQL日志
官网地址 gitHub地址 在项目的pom.xml中添加依赖 修改项目数据库连接地址Connection URL jdbc:mysql://host/db 修改为jdbc:p6spy:mysql://host/db 修改数据库 driver-class-name driver-class-name: com.mysql.cj.jdbc.Driver 修改为com.p6spy.eng...
2019-12-11 17:56:02
717
原创 分布式服务dubbo-nacos
1.dubbo+nacos+springboot具体如何实现可查看dubbo-spring-boot-project/dubbo-spring-boot-samples此连接中有示例 创建父工程 在父工程下创建子模块 在pom.xml中添加所需依赖 在配置文件application.properties/YML中添加配置 提供服务方通过@Service注解暴露服务 消费方...
2019-12-11 14:22:14
137
原创 数据库基础知识
mysql,sql server ,Oracle都为关系型数据库平衡二叉树 缺点:磁盘IO操作频繁、 浪费磁盘空间(一个磁盘只放一个关键字)BTree(B树) : 一个磁盘可以放多个关键字,并且(关键字个数 =子节点路数 -1)正是因为这些原因,让树的层级减少,磁盘IO的操作也相应减少,树的关系是绝对平衡的...
2019-12-05 22:58:31
65
原创 Nginx 反向代理 负载均衡
简单的负载均衡配置 nginx.conf#user nobody;worker_processes 1;#error_log logs/error.log;#error_log logs/error.log notice;#error_log logs/error.log info;#pid logs/nginx.pid;events { ...
2019-08-21 13:27:13
106
原创 JavaScript基础
1.重新typeOf方法function myTypeof(a) {var type = typeof (a);var toStr = Object.prototype.toString;var tStr = {'[object Array]': 'Array','[object Object]': 'Object','[object Number]': 'Numbe...
2019-08-19 17:54:09
91
转载 window.print
一.打印当前页面指定元素中的内容方式一:直接使用window.print();(1)首先获得元素的html内容(这里建议如果有样式最好是用内联样式的方式) var newstr = document.getElementById(myDiv).innerHTML;//得到需要打印的元素HTML(2)保存当前页面的整个html,因为window.print()打印操作是打印当前页的...
2019-07-04 17:30:50
488
原创 zipOutputStream导出zip压缩包
def basePath = request.getSession().getServletContext().getRealPath(".") def outFile = basePath+"/export/8D.xls" InputStream input =new BufferedInputStream(new FileInputStream...
2018-11-02 09:18:36
1923
原创 Vue 工具&插件
插件vuex-persistedstate 使用浏览器的本地存储( local storage )对状态( state )进行持久化post-css:postcssimmutable:不可变对象
2018-09-07 16:06:02
219
原创 grails 汇总
实例学习网址通过domainClass的字符串名称获得其类对象grailsApplication.getClassForName('test.Post')
2018-08-30 09:11:28
109
原创 从数据库中读取数据生成文件或下载
def result = [code: 200, msg: "success"] def sql = new Sql(dataSource); def files = sql.rows("select * from T_SYS_attachmentInfoUse where pk = 1") //将字节数组装换成字节数组流 ...
2018-08-06 09:10:26
4769
原创 grails Uploading Files
Uploading Files 文档 MultipartHttpServletRequestMultipartFile
2018-08-01 11:31:28
122
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人