- 博客(32)
- 收藏
- 关注
原创 POJO属性类型改为LocalDateTime
引入依赖<!-- mybatis数据库字段类型映射,(LocalDateTime) --><dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-typehandlers-jsr310</artifactId> <version>1.0.1</version></dependency><!--
2021-01-07 10:32:51
459
1
原创 ssm框架 Mybatis获取自增主键id
原以为新增完成后会自动返回新增的id,测试几次后都是返回1。原来操作成功后返回的是受影响的行数而不是id。在xml配置中Mybatis想要获取自增的id主要有两种方式第一种<!-- keyProperty="id" id为实体类对应的属性,执行完成后自增id会赋值到此属性 --><insert id="addGoods" keyProperty="id" useGeneratedKeys="true"></insert>第二种<!--keyPr
2021-01-05 17:07:46
685
原创 ssm使用MyBatis分页插件PageHelper
导入jar包<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>5.1.2</version> </dependency>整合到ssm<!-- spring mybatis的配置文件(spring-dao.xml) --><!-- 配
2021-01-04 17:20:03
442
1
原创 启动tomcat报 Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContex
之前的项目启动一直没有什么问题新建项目之后单独启动一直报Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[]]但是和原来的项目一起启动又正常了。百度到大部分都是说<url-pattern>/</url-pattern>或者maven的jar包下载不完全导致的,调整之后依然报错。最后找到一篇文章解决此问题https://blog.csdn.n
2020-12-22 15:01:56
160
原创 <context:property-placeholderlocation>标签导入多个文件
先上错误代码#MyBatis.xml<context:property-placeholder location="classpath:jdbc.properties" /><bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"></bean>#redis.xml<context:property-placeholder location="classpath:re
2020-12-22 15:01:38
489
原创 git忽略文件及.gitignore不生效
在git中忽略文件或文件夹使其不提交到版本库中,需要修改根目录的.gitignore文件(如果没有则需要自己新建)。文件中每一行都是一条匹配规则示例:# 表示此为注释,将被Git忽略*.a 表示忽略所有 .a 结尾的文件!lib.a 表示但lib.a除外/TODO 表示仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODObuild/ 表示忽略 build/目录下的所有文件
2020-12-22 14:59:20
125
原创 工具类使用@Autowired无法注入bean的解决方法
配置文件增加扫描工具包类<context:component-scan base-package="com.test.util" />工具类需要使用@Component注解package com.test.util;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Component;@Componentpublic class
2020-12-16 15:14:52
726
原创 spring mvc配置redis及使用
配置所需jar包<!-- Jedis是Redis官方推荐的Java连接开发工具 --><dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.7.3</version></dependency><!-- 对Redis的Key-Value数据存储操作提供
2020-12-16 15:13:15
831
3
原创 redis存储List类型数据 Jackson转换list为json
Redis支持的类型虽然有List,但是只支持List<String>。一般有两种方式来存储1.序列化与反序列化2.json正常情况下序列化效率挺高的,但是遇到高并发的情况会导致消耗太高。把数据转换成json格式获取的时候在转换为对象,简单快捷,所以这里使用第二种json格式来存储List。需要引入的jar包<!-- json --><dependency> <groupId>com.fasterxml.jackson.core</
2020-12-16 15:12:09
1347
原创 Spring Mvc拦截器的使用
1.在配置文件中配置拦截器<!-- 配置拦截器 --><mvc:interceptors> <mvc:interceptor> <!-- 拦截哪些文件(这里是拦截全部,在下面配置不需要拦截的路径) --> <mvc:mapping path="/**" /> <!-- 排除不需要检查的路径 --> <mvc:exclude-mapping path="/
2020-12-16 15:11:09
70
原创 解决springmvc接收不到post提交的form-data格式数据
1.导入jar包<dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3.1</version></dependency>2.在xml文件中增加配置<!-- 配置文件上传 --><bean id="mul
2020-12-16 15:10:19
1434
原创 Spring Mvc整合Swagger-UI实现在线API文档
Swagger-UI简介Swagger-UISwagger-UI是HTML, Javascript, CSS的一个集合,可以动态地根据注解生成在线API文档。常用注解@Api:用于修饰Controller类,生成Controller相关文档信息@ApiOperation:用于修饰Controller类中的方法,生成接口方法相关文档信息@ApiParam:用于修饰接口中的参数,生成接口参数相关文档信息@ApiModelProperty:用于修饰实体类的属性,当实体类是请求参数或返回结果时,直接
2020-12-16 15:09:33
118
原创 SSM整合Shiro出现no ContextLoaderListener registered的问题
整合shiro时一直出现No WebApplicationContext found: no ContextLoaderListener registered?的问题,检查代码也没有发现有不对的地方,经过几轮百度终于解决问题。第一个是spring版本问题,我之前一直使用的是4.1.7,改为4.2.4之后对web.xml进行以下修改<servlet><servlet-name>spring-dispatcher</servlet-name><servlet-c
2020-12-16 15:08:51
244
原创 Spring Mvc整合Apache Shiro
Apache Shiro简介Apache ShiroApache Shiro是一个强大易用的java安全框架,虽然不如Spring Security强大,但是对于大部分项目而言也够用了。而且在SSM/SSH中整合Spring Security都是比较麻烦的操作,所以在以上两个框架中使用shiro更多一点。常用技术栈SSM+ShiroSpring Boot/Spring Cloud + Spring Security整合Shiro目录结构添加依赖(pom.xml)<depende
2020-12-16 15:08:09
118
原创 SSM整合Shiro后swagger2不能访问
如题,是因为Swagger需要的一些资源没有放开,放开之后就好了<!-- 开放以下资源就可以了 -->/swagger-ui.html=anon/swagger-resources/** = anon/v2/api-docs/** = anon/webjars/springfox-swagger-ui/** = anon
2020-12-16 15:06:54
258
原创 严重: 启动过滤器异常 java.lang.ClassNotFoundException: org.springframework.web.filter.CharacterEncodingFilter
从git克隆的项目导入Eclipse时报错java.lang.ClassNotFoundException: org.springframework.web.filter.CharacterEncodingFilter[外链图片转存中…(img-r43ASgKr-1608014167946)]报错原因是因为项目的发布路径Deployment Assembly缺少maven依赖。解决方法:右键项目-》Properties-》Deployment Assembly 点击add-》Java Build P
2020-12-16 15:06:01
3230
1
原创 php使用多进程
多进程使用场景多进程一般用来处理消息队列,等数据量比大的任务。使用限制php多进程需要pcntl和posix扩展支持。可以使用php -m查看是否安装该扩展。需要注意的是CLI模式和CGI模式时用的php.ini并非同一个配置,需要单独配置。一般情况下使用默认配置即可php多进程只能运行在CLI环境下,在web服务器环境下会出现无法预期的结果,要慎用!子进程的个数最好和服务器的核数匹配,子进程超过cpu核数就会存在执行分配问题,所以不建议子进程开得很多。核心函数pcntl_fork:创建子
2020-12-15 14:33:19
497
原创 php 实现webshell
php实现webshell主要依靠swoole和ssh2扩展,前端展示页面使用xterm废话不多说直接上代码后端代码<?php/** * websocket服务器(使用swoole) * 使用ssh登录服务器 */class Ws{ private $shell; private $connection; private $isConnection; private $ws; public function __construct(){
2020-12-15 14:31:59
2297
原创 mysql 长字符串如何建立索引 前缀索引
因为业务的需求,难免要对比较长的字段进行匹配,如果不建立索引就会进行全表扫描,非常消耗时间。但是为长字符串建立索引也非常消耗空间,性能也不高。一般有两种解决方案1.为字段添加前缀索引2.增加crc字段以下为两种方案的实现,以身份证为例CREATE TABLE `people` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(100) NOT NULL, `car_id` varchar(18) NOT NULL, PR
2020-12-15 14:29:35
860
原创 java.lang.NullPointerException出现原因及解决办法
在java中几乎任何使用到.的地方都有可能会报这个错误。我自己遇到的问题是,没有引入spring配置文件导致@Autowired注解失效没有完成自动装配,而导致的虽然声明了对象但是值为null。当出现这种问题时首先要找到错误行,检查是否有变量或者对象为null。...
2020-12-15 14:20:57
17973
原创 java枚举类型 enum基本用法
什么是枚举枚举类型是java 5新增特性的一部分,它是一种特殊的数据类型,它既是一种类又比类多了些特殊的约束,但也是这些特殊的约束造就了枚举类型的简洁性、安全性以及便捷性。为什么要使用枚举使用枚举会更加直观、方便。比如涉及到一些状态的操作比较耳熟能详的方式为定义几个常量,然后if判断常量值来返回对应的状态,这样非常不利于阅读以及后期扩充。枚举的使用public class TestEnum{ public static void main(String[] args) {
2020-12-15 14:20:24
443
原创 命令行编译单个java文件引入jar包
有时候需要测试某个东西,在eclipse中写的话有点太笨重,这时候直接用文本工具写代码然后在命令行编译就挺方便了。假设java文件名为Demo.java如果不需要依赖其它jar包直接#编译javac Demo.java#执行class文件java Demo就可以了。那如果引入了其它jar包呢,这时候就用到了-cp命令。cp的作用就是指定类运行时所依赖其它类的路径,需要全路径到jar包。多个jar包的话windows使用;分隔,linux使用:分隔。#编译javac -cp D:\j
2020-12-15 14:19:12
1407
原创 使用java命令运行class文件报错“找不到或无法加载主类”
可以编译成功,路径也是正确的,可就是报“找不到或无法加载主类”。其实原因很简单,排除代码拼写错误的情况一般都是以下两个原因引起。1.classpath环境变量配置问题java指令默认在寻找class文件时是根据classpath环境变量指定的目录寻找的,直接在classpath环境变量中加入 .;就可以.的意思是在当前目录查找主类,而我的问题是因为.;多了一个 :冒号,去掉之后问题就解决了。2.文件头部的包名eclipse会自动为文件加入一个包名 package,而按照java的规定我们必须按照包
2020-12-15 14:17:19
1860
原创 maven的maven-compiler-plugin插件
maven-compiler-plugin插件可以指定项目源码的jdk版本,编译后的jdk版本,以及编码。maven是个项目管理工具,如果我们不告诉它使用什么jdk版本编译的话就会使用插件默认的版本,而这个版本貌似很低,容易出现版本不匹配的问题。<build> <finalName>o2o</finalName> <plugins> <plugin> <!-- https://mvnrepositor
2020-12-15 14:16:38
485
原创 git最最最基本操作
获取和创建git init在目录中执行 git init将创建一个新的git仓库mkdir folder cd foldergit init#这样一个新的git仓库就创建成功了#现在可以在目录中看到一个 .git文件夹,这个文件夹用来存放项目的快照数据gitclone使用 git clone拷贝一个git仓库到本地,进行查看或者修改项目git clone url#url 为你想要拉取的项目地址提交操作git仓库中的提交记录保存的是你目录下所有文件的快照git statusg
2020-12-15 14:15:44
109
原创 Git冲突:commit your changes or stash them before you can merge.的两种解决方法
使用git pull更新代码时报了以下错误出现以上问题是因为服务器上的文件有过修改,而本地没有pull就修改了相同文件,所以pull的时候就会冲突。第一种解决方法通过git stashgit stash #备份当前的工作区的内容,从最近的一次提交中读取相关内容,让工作区保证和上次提交的内容一致。同时,将当前的工作区内容保存到Git栈中git pullgit stash pop #从Git栈中读取最近一次保存的内容,恢复工作区的相关内容。由于可能存在多个Stash的内容,所以用栈来管理,pop会
2020-12-15 14:14:30
302
原创 连接mysql报错:could not find driver
看到错误信息时小意思吗,肯定是pdo没有安装的情况,使用php -m查看发现pdo已经安装。咦难道是扩展没有打开,然后查看php.ini是否打开pdo扩展extension=php_pdo_mysql.dll,还真的是。1.关闭注释(去掉前面的;号)2.重启nginx(systemctl restart nginx)搞定自信满满,打开浏览器刷新页面。咦,什么情况,为什么错误还在,打开php.ini...
2018-03-11 20:33:45
5282
原创 svn不能自动添加新建的文件
使用svn时遇到一个问题,新建的文件没有被自动添加到commit里面,需要手动add之后才可以。导致经常漏掉文件。 问题是由于在svn下的某些目录忽略文件导致的,根据以下步骤去掉就可以 在你的项目根目录右键,选择Properties 单击Remove按钮,选择Recursive干掉这个属性,单击Ok就可以了 选择需要删除的忽略属性,然后点击Remove,在弹出的框中单击Recursive
2017-05-27 09:20:51
15842
3
原创 mysql打开远程连接
远程连接mysql时报10038错误,原因是mysql的远程连接未开放,可以使用以下方法打开远程连接。 进入mysql命令行,输入以下命令。GRANT ALL PRIVILEGES ON . TO ‘账号’@’%’ IDENTIFIED BY ‘密码’ WITH GRANT OPTION; flush privileges;grant all privileges on #授权语句 .
2017-05-26 23:37:28
239
原创 linux下忘记mysql密码
找到mysql的配置文件my.cnf find / -name my.cnf; 进入配置文件 vim my.cnf; 在[mysqld]下加入 skip-grant-tables //skip-grant-tables作用为数据库启动的时候 跳跃权限表的限制,不用验证密码,直接登录然后重启mysql。 systemctl restart mysqld进
2017-05-26 23:16:18
306
原创 javascript判断数组中是否存在某个值
1.javascript的indexOf()方法 var arr_data = [1,2,3]; arr_data.indexOf(1); //如果存在返回值的下标,不存在返回-12.jquery的$.inArray()方法 $.inArray(1, arr_data); //如果存在返回值的下标,不存在返回-1
2017-05-17 23:45:08
24434
原创 javascript将json字符串转换为json对象
1.jquery插件支持的方式 $.parseJSON(); var json_str= ‘[{“CityId”:18,”CityName”:”济南”,”ProvinceId”:27,”CityOrder”:1},{“CityId”:53,”CityName”:”上海”,”ProvinceId”:27,”CityOrder”:1}]’var json_obj = $.parseJson(json
2017-05-17 23:32:22
275
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人