- 博客(133)
- 收藏
- 关注
原创 SSM 中静态资源的访问
在 SSM 中设立起拦截器之后,很多静态的资源在加载的时候是会被拦截下来的所以需要做一点配置在Web.xml中<!-- 配置静态资源 --> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>/resource/*<...
2018-12-02 10:58:51 1927
原创 Java 爬虫笔记
今天的目标是从学习OJ爬取后台数据,拿到了一个链接的接口,修改题目编号和操作码就能下载数据,但是需要登录账号的Cookie所以记录一下用HttpClient 发送网络请求,并下载文件public static void doPostWithParam(String postUrl, Map<String,String> params,Map<String,String&...
2018-12-02 10:58:43 2380
原创 ajax 同步与异步
同步是指:发送方发出数据后,等接收方发回响应以后才发下一个数据包的通讯方式。用户填写所有信息后,提交给服务器,等待服务器的回应(检验数据),是一次性的。信息错误又要重新填写!异步是指:发送方发出数据后,不等接收方发回响应,接着发送下个数据包的通讯方式。当用户填写完一条信息后,该信息会自动向服务器提交,然后服务器响应客户端,在此过程中,用户依然在填写表格的信息,即向服务器请求多次,节省了用户的...
2018-12-02 10:58:38 458
原创 页面中需要多个ajax任务时的做法
如果一个页面里需要不止一个ajax操作时 使用回调函数回调函数是一种以参数形式传递给另一个函数的函数。如果您的网站上存在多个 AJAX 任务,那么您应该为创建 XMLHttpRequest 对象编写一个标准的函数,并为每个 AJAX 任务调用该函数。该函数调用应该包含 URL 以及发生 onreadystatechange 事件时执行的任务(每次调用可能不尽相同)<...
2018-12-02 10:58:33 837
原创 状态码大全
100——客户必须继续发出请求101——客户要求服务器根据请求转换HTTP协议版本200——交易成功201——提示知道新文件的URL202——接受和处理、但处理未完成203——返回信息不确定或不完整204——请求收到,但返回信息为空205——服务器完成了请求,用户代理必须复位当前已经浏览过的文件206——服务器已经完成了部分用户的GET请求300——请求的资源可...
2018-12-02 10:58:28 273
原创 Spring Boot 中的前后台数据交互方式
Java Web 项目里的前台与后台之间的交互是一个重点今天记录Spring 框架下前后台数据交互的方式1.Form 表单 + request 方式前端提交表单 <div class="container" > <form action="/admin/login" method="post"> <input type=".
2018-12-02 10:58:22 12012
原创 Spring 中的 Token 验证
在 Java Web 工程项目中,登录等操作是非常常见的,那么登陆之后要做的第一件事就是要记住这个登录状态,那么常规且一般的操作是怎么做的呢?1.账号密码验证2.验证通过,往 session 里赛用户信息但是今天要介绍另一个高级的身份验证方法 : token那么为什么要使用 token 而不直接使用 session 呢?首先,token 相对session安全性更好,另外这种方法兼...
2018-12-02 10:58:16 1320
原创 SpringBoot + Redis 以及在工具类里注入 Service(Redis)
现在的场景是需要做 token 验证,那么用户退出登录之后,我们给他设置一个新的 token,然后当用户拿着已经注销了的token再进行访问验证时,到 Redis 里查看对比两个token是否一致,如果不一致说明token已过期所以现在我们需要在 验证 token 的 Class 里面使用 RedisService 从数据库里拿出 token 做对比由于工具类是 静态的方法,并且也不是 c...
2018-12-02 10:58:09 3948
原创 SSM 图像文件静态资源上传 详解
在SSM框架下我们必然有上传文件的需求那么我们就一步步开始吧首先,我们今天的目标是做一个头像上传的功能逻辑:1、用户选择图片文件上传 2、后台接收文件保存 3、后台将文件地址保存到数据库第一步:首先我们需要一些工具:commons-fileupload 和 commons-iomaven添加依赖: <!-- 文件上传依赖 --><dependen...
2018-12-02 10:57:58 1032
原创 SpringBoot 项目中 标准化 Json 的返回
在项目中我们往往会规定后台向前端传输数据的格式,比如下面这个{ "code": 0, "msg": "成功", "data": { "***": "****" ... }}最外层有三个字段,code,msg,和data,全部主要数据都放进data里,这样更加的规范可控1.创建一个用于返回的类 ResultVO/** * http请求
2018-12-02 10:57:52 646
原创 SpringBoot 项目 MySQL 数据库连接
SpringBoot 支持很多数据库连接,这里举例使用MySQL数据库1.一般我们的数据库都会放到一个指定的服务器上,先查看服务器地址,数据库登录名和密码2.引入依赖 <!-- MySQL 依赖 必须--> <dependency> <groupId>mysql</groupId>...
2018-12-02 10:57:45 864
原创 SpringBoot项目中统一处理异常
1.首先创建一个异常类,要继承RuntimeException/** * @author: 林之谦 * @date: 2018/7/27 * @description: */@Getterpublic class SellException extends RuntimeException { private Integer code; public Sell...
2018-12-02 10:57:40 372
原创 SpringBoot 项目中根据自定义状态吗反向查询状态详情
我们在开发中,为了保持项目运行的效率,降低数据库的冗余,往往会使用Code来代表某些信息,而不把全部的信息都存到一个表中,比如某个项目中,我们的商品有上架或者下架的状态,某个订单有新订单,已完结,已支付等状态,我们往往都会用一个数字code 来表示状态,而不是存全部,那样冗余太大。我们的状态往往都会使用一个枚举类存起来但是有时候我们需要向前端传输我们某个对象的状态的详情的时候,我们需要取出...
2018-12-02 10:57:29 419
原创 Java 中对Http 进行 Cookie操作
首先Cookie是我们后端向前端传输数据的时候设置的一些数据字段,但是Cookie的作用并不是用来传输数据,传输数据的工作交给Json,Cookie更多的是用作验证当用户登录之后,我们会向用户的前端Cookie里设置 token 之类的字段用于后续判断用户的身份,那么为什么可以要用Cookie来判断身份呢?因为Cookie不是只能由后端传输的前端而已,它是保存在用户本地的,前端与后端通过 Ht...
2018-12-02 10:57:23 1559
原创 Java 使用Redis实现分布式锁
在高并发多线程的环境下,一些数据的存取操作会遇到许多的问题,导致数据污染一般的情况下我们会给我们操作数据的代码上锁,就是加个 synchronized ,这样这块代码就是同步的了,每次只能有一个线程进入那么数据自然不会被污染了但是这样的操作也是存在问题的 1.由于变成单线程,这一块业务的操作变得非常缓慢,请求多的时候等待时间特别长2.synchronized 只能在单服务器上使用,...
2018-12-02 10:57:18 338
原创 Linux 下 安装并配置 Vsftpd 用作静态资源服务器
1.版本信息Linux 版本 : CentOS 6.8 64位vsftpd 版本: vsftpd-2.2.2-24.el6.x86_642.安装 vsftpdyum -y install vsftpd3. 为 vsftpd 创建目录现在根目录下创建 ftp 文件夹mkdir ftpfile 创建结果: /ftpfile4. 为 vsftpd 创建虚拟用户use...
2018-12-02 10:57:12 304
原创 Java 使用Redis做数据缓存
我们在做后端服务的时候,要非常注重性能,比如我们一个项目,大家回频繁地打开某一个页面的时候,回频繁地去后台请求数据库访问数据,重复地查询一样的数据,这样一想,在数据库里那部分数据没有被更新的情况下还重复地去查询,是不是觉得有点浪费资源了呢?是的,那么我们就要想办法把那些不必要每次都从数据库里拿的数据(更新频率低)做缓存,不要每次访问页面都去查询一次。我们使用 Redis 来实现缓存1.引入...
2018-12-02 10:56:59 3475
原创 SpringBoot AOP切面 + Redis 身份验证
一个成熟的项目中,如果有些方法是对登录身份有所限制的话,我们往往回去验证一下用户的身份,方法很简单,就是从Cookie里取出我们的身份信息,再判断是否有效我们这里使用的身份验证工具时 Redis,我们在用户登录时为用户生成一个 token,把 token 放进 Cookie 传到前端的同时也在Redis 里保存 token1.创建一个 Redis 用的属性类,如有效期,前缀等/**...
2018-12-02 10:56:54 717
原创 Spring + SpringMVC + MyBatis 项目 分析
1.使用工具 IDEA 2018.12.使用环境版本: Java 1.8.0_162 Maven 2.7.7 Spring 4.1.1 Mysql 5.7.14先看一眼我的目录结构然后再看一下我的 maven 依赖<project xmlns="http://maven.apache.org/POM/4.0.0" ...
2018-12-02 10:56:43 213
原创 nginx 反向代理配置
nginx 的作用,可以用来做静态资源的代理,反向代理,负载均衡等今天的主题:使用 nginx 配置反向代理1.用 vmware 搭建一个虚拟机 例如 CentOS然后在虚拟机下安装 nginx 所需要的依赖1、 gcc-c++ 安装命令: yum install gcc-c++2、 pcre 安装命令: yum install pcre-devel...
2018-12-02 10:56:36 335
原创 IDEA 下载插件失败或速度慢的解决方法
1.打开 setting2.打开system setting 里的 updates3.下面红框框里的选项是默认勾选的,把它去掉再试试看吧
2018-12-02 10:56:29 33068 24
原创 Java 项目中 用户密码 的 MD5 加密
1.在几乎所有的项目中,都会有用户身份,既然有用户身份那就有登录操作,就会有用户信息,那就有用户的密码2.我们如何实现用户的登录呢? 数据库中的 user 表里的 密码字段要给得足够长 然后我们不能直接把用户的密码明文地保存在数据库里,需要做加密我们使用的加密手段:MD5 加密MD5工具类import org.springframework.util.StringUtil...
2018-12-02 10:56:23 1333
原创 Java 项目 一段时间不访问错误500,刷新一下就好了?
这是关于连接池的配置:<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="${driver}" /&
2018-12-02 10:56:16 1397
原创 MyBatis 插入失败后爆出 500 ,如何捕获异常?
我们在使用 Mybatis 的时候,会出现以下场景数据表里有一些字段被设置为了 不可为 null但是我们的用户在提交表单的时候没有提交所需的 字段数据然后 Mybatis 在数据库做操作的时候就出错了,然而它却直接给页面返回了一个 500当然了,我们是一定不希望用户看到 500 的那怎么办呢?当然是把这个错误给捕获了,然后把它处理掉,给用户返回提示,而不是500但是大家会发...
2018-12-02 10:56:08 8736 1
原创 Java 项目下 properties 文件的使用
我们在使用 spring 框架的时候,经常需要配置一些文件比如我们连接数据库的时候会有一个 datasource.properties 文件有了这些文件,我们后续更改数据库或者服务器的时候,就只需要在 properties 文件里更改那么我们做项目的时候肯定也有很多我们自己的属性需要配置比如我配置一个我的 ftp 的时候,我会需要配置 ftp.server.ip,user,pass...
2018-12-02 10:55:58 249
原创 Java 项目配置并使用 vsftp 做静态资源服务器
服务器上 vsftp 的配置已经说过了,这里只说在 java 里如何使用1.创建一个配置文件,填写好ftp服务器的配置ftp.server.ip=服务器IP地址ftp.user=ftp用户名ftp.password=ftp密码ftp.server.http.prefix=ftp服务器的指向域名2.创建 FTPUtil 类package com.mmall.util;...
2018-12-02 10:55:52 608
原创 使用 natapp 进行内网穿透
进入 natapp 的官网 https://natapp.cn/把软件下载并解压到一个文件夹里在官网创建账号并登录然后创建一个免费隧道然后点右边的配置填写好本地地址 和 你要穿透的端口,然后复制 authtoken然后在你解压的文件夹下创建一个 config.ini 文件config.ini:[default] authtoken=你复制的 auth...
2018-12-02 10:55:45 674
原创 配置 maven 使项目打包的时候自动带上本地 jar 包
只需要在 maven 文件里加上这个配置就可以了 <!-- geelynote maven的核心插件之-complier插件默认只支持编译Java 1.4,因此需要加上支持高版本jre的配置,在pom.xml里面加上 增加编译插件 --> <plugin> <groupId>o...
2018-12-02 10:55:39 1521
原创 Tomcat JSP 项目路径 WEB-INF 内 JSP 访问
登录Demo项目目录:所有的页面都在 WEB-INF/pages/ 文件夹下web.xml 的配置:<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/...
2018-12-02 10:55:33 815
原创 Java 后台操作 Cookie 记录 token
在做用户登录的时候,Java 后台往往需要向前台传递 cookie 或者 session现在我们使用 token 做用户登录验证时,用户登录成功之后生产token,之后用户的每次访问都需要使用token那么用户从哪里取得token呢?当然是 cookie 了所以在登录时,后台要做的就是生产 token 并传送 cookie 给前台设置 Cookie 做法如下Cookie co...
2018-12-02 10:55:24 2168
原创 计蒜客 Transport Ship (2018-ACM-ICPC-焦作-网络赛)DP
There are NN different kinds of transport ships on the port. The i^{th}ith kind of ship can carry the weight of V[i]V[i] and the number of the i^{th}ith kind of ship is 2^{C[i]} - 12C[i]−1. How many d...
2018-10-06 15:43:04 288
原创 计蒜客 Ryuji doesn't want to study(2018 ICPC 徐州 网络赛 )线段树
Ryuji is not a good student, and he doesn't want to study. But there are n books he should learn, each book has its knowledge a[i]a[i].Unfortunately, the longer he learns, the fewer he gets.That m...
2018-10-04 12:39:03 223
原创 计蒜客 Made In Heaven (2018-ICPC-沈阳-网络赛)k 短路
One day in the jail, F·F invites Jolyne Kujo (JOJO in brief) to play tennis with her. However, Pucci the father somehow knows it and wants to stop her. There are NN spots in the jail and MM roads conn...
2018-10-02 17:41:31 372
原创 计蒜客 Supreme Number (2018-ICPC-沈阳-网络赛)
A prime number (or a prime) is a natural number greater than 11 that cannot be formed by multiplying two smaller natural numbers.Now lets define a number NN as the supreme number if and only if each...
2018-10-02 10:51:27 298
原创 求凸包点和面积及周长
/**Author: LinZhiQDate: 2018-10-01 17:28Graham扫描法 求凸包*/#include<bits/stdc++.h>using namespace std;const double eps = 1e-8;const double PI = acos(-1.0);struct Point { double x,y; P...
2018-10-01 17:28:49 917
原创 HDU 6219 空凸包 + DP
Empty Convex PolygonsTime Limit: 16000/8000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others)Total Submission(s): 651 Accepted Submission(s): 175Problem DescriptionGiven a set ...
2018-10-01 15:10:09 540
原创 HDU 6437 【网络流-最小费用最大流】
Problem L.VideosTime Limit: 4000/2000 MS (Java/Others) Memory Limit: 524288/524288 K (Java/Others)Total Submission(s): 389 Accepted Submission(s): 191Problem DescriptionC-bacteria takes c...
2018-08-23 12:08:43 343
原创 HDU 6415 Rikka with Nash Equilibrium 【DP】
---->>>>> 传送门 <<<<<----题意:纳什均衡指的是某个数在一个矩阵中的某个位置的时候,它同时是这一行和这一列里最大的数现在要求你构造出矩阵,矩阵里的数为 [ 1 , n*m ] 的不同的数,要使得矩阵里只有一个位置满足纳什均衡,然后给出矩阵的规格给出一个取模的值,要求有多少种构造方法思路:首先这个纳...
2018-08-21 10:06:12 334
原创 HDU 6397 Character Encoding 【组合数 + 逆元 + 容斥】
Character EncodingTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Total Submission(s): 898 Accepted Submission(s): 349 Problem DescriptionIn computer sc...
2018-08-16 14:23:59 232
原创 HDU 6406 Taotao Picks Apples 【线段树 + 单调队列】
Taotao Picks ApplesTime Limit: 2000/2000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Total Submission(s): 961 Accepted Submission(s): 283 Problem DescriptionThere is an a...
2018-08-16 14:13:56 396
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人