entity

XSS过滤JAVA过滤器filter 防止常见SQL注入

允我心安 提交于 2020-11-16 03:27:07
https://www.cnblogs.com/hero123/p/9091625.html Java项目中XSS过滤器的使用方法。 简单介绍: XSS : 跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS。恶意攻击者往Web页面里插入恶意html代码,当用户浏览该页之时,嵌入其中Web里面的html代码会被执行,从而达到恶意攻击用户的特殊目的。 sql注入 所谓SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。具体来说,它是利用现有应用程序,将(恶意)的SQL命令注入到后台数据库引擎执行的能力,它可以通过在Web表单中输入(恶意)SQL语句得到一个存在安全漏洞的网站上的数据库,而不是按照设计者意图去执行SQL语句。 实现方式,共三步: 第一步 :配置web.xml <filter> <filter-name>xssFilter</filter-name> <filter-class>com.wfcm.xss.XssFilter</filter-class> </filter> <filter-mapping> <filter-name>xssFilter</filter-name>

干掉 try catch!

 ̄綄美尐妖づ 提交于 2020-11-15 07:47:44
软件开发过程中,不可避免的是需要处理各种异常,就我自己来说,至少有一半以上的时间都是在处理各种异常情况,所以代码中就会出现大量的 try {...} catch {...} finally {...} 代码块,不仅有大量的冗余代码,而且还影响代码的可读性。 比较下面两张图,看看您现在编写的代码属于哪一种风格?然后哪种编码风格您更喜欢? 丑陋的 try catch 代码块 优雅的Controller 上面的示例,还只是在 Controller 层,如果是在 Service 层,可能会有更多的 try catch 代码块。这将会严重影响代码的可读性、“美观性”。 所以如果是我的话,我肯定偏向于第二种,我可以把更多的精力放在业务代码的开发,同时代码也会变得更加简洁。 既然业务代码不显式地对异常进行捕获、处理,而异常肯定还是处理的,不然系统岂不是动不动就崩溃了,所以必须得有其他地方捕获并处理这些异常。 那么问题来了,如何优雅的处理各种异常? 什么是统一异常处理 Spring 在3.2版本增加了一个注解 @ControllerAdvice ,可以与 @ExceptionHandler 、 @InitBinder 、 @ModelAttribute 等注解注解配套使用,对于这几个注解的作用,这里不做过多赘述,若有不了解的,可以参考Spring3.2新注解@ControllerAdvice

Asp.net core 学习笔记 ef core Surrogate Key, Natural Key, Alternate Keys

与世无争的帅哥 提交于 2020-11-13 12:38:14
更新 : 2020-01-05 今天记入一下 alternate key 遇到的主次疑惑 alternate 会产生多个 foreignkey 的情况 比如我想选一个 state 那么前提是我要先选 country, 这样就需要有 2 个 foreignkey 所谓的主次疑惑是说在上面这个情况下我是要一个 state 所以当这个 state 换 country 后, 我也是要跟着它走的. 整个都是 cascade update. 另一种情况可能是我先选了一个 country, 然后我想再选一个 state, 这种情况下, country 是确定的. state 是依赖 country 的, 这时候如果 state 突然换了 country, 那么我其实是不想跟着换的,反而要阻止它,因为逻辑错了。 更新: 2019-12-23 在 ef 如果要拿不是 Id 来做 foreignkey 那么它就肯定是 alternative key 了, 当我们调用 HasPrincipalKey 这个时候 alternative key 就自动被做出来了。 在 sql 的话,其实并没有这么一个条件. 更新: 2019-11-01 虽然 Natural Key 很自然,但是维护起来成本很挺高 ef core 给了我们 Alternate Keys + composition

双十一“囤医美”!“颜值经济”怎么玩才更安全?

五迷三道 提交于 2020-11-12 14:50:58
白山云科技 从青黛画眉、胭脂染唇,到如今形形色色的美妆产品层出不穷;从中医正骨徒手整形,到国内外研制的各种针剂、仪器创造千亿级市场;从“女为悦己者容”,到“女为己悦而容”的时代更迭中……对于美的追求,在东西文明的碰撞融合、医学和科技的演进升级中不断加深,“求美”也成为更加大众、日常、便捷的消费行为。 饿了么数据显示,2020年天猫双十一第一波售卖期,医美医疗订单量环比增长近7倍,成为最受欢迎的生活服务项目。“囤医美”,已然成为消费者双十一剁手的新姿势。 中投顾问报告也表明,进入21 世纪后,世界范围内医疗美容行业已成为仅次于汽车业和航空业的第三大产业。新趋势催生新业态, “互联网+医美” 在近年来迅速崛起,加快了医美数字化、智能化步伐。新氧、更美、悦美等第三方医疗服务平台的出现更极大提高了医院与求美者之间的匹配效率。 然而,人们在享受数字化便利时,信息安全问题却时常被忽略。相比而言, 医美平台兼具医疗与互联网的双重属性 ,信息环境复杂,既要对接医院的数据系统,又要对接广大求美者,每一个环节都有可能造成平台信息泄露。同时, 医美行业的信息敏感度更高 ,涉及求美者的信息不仅全面,而且关联度较高,求美者的隐私保护至关重要。 医美服务平台多存在 业务攻击量大、日记和评论被爬取、遭遇撞库、短信验证暴力破解等风险 。不法分子通过登录绕过、未授权访问、平行越权等手段,导致大量求美者的姓名、手机号

BeetlSQL 3.0.10 发布,多数据源分布式sega事务支持

雨燕双飞 提交于 2020-11-12 10:59:24
本次发布主要增加了分布式Sega事务支持,适合多数据源 按照社区建议,修改了了springboot 的 yml配置方式 修改了@Jackson和@UpdateTime,本来是用来作为例子,但社区开发者提供了较好的完整实现 增加Sega支持 <dependency> <groupId>com.ibeetl</groupId> <artifactId>beetlsql</artifactId> <version>3.0.10-RELEASE</version> </dependency> public class UserEntity{ @Jackson Map<String,Address> addresses; @UpdateTime LocalDateTime updateTime; } 在多库多数据源的场景下,ORM工具有三个挑战,一个是如何根据各种策略分库分表,一个是如何方便的查询多库的数据,另外一个是多库操作的事务 BeetlSQL能很好的支持分库分表策略,以及提供了简单的Sega事务支持。至于多库查询,则可以交给第三方SQL查询引擎,BeetlSQL也支持多种SQL查询引擎,比如Druid,PrestoSQL public interface UserMapper extends SegaMapper<User> { @SegaUpdateSql( sql="update

领域驱动设计-让程序员心中有码(九)

我的未来我决定 提交于 2020-11-11 04:43:28
一、易于腐化的软件设计 犹记得刚刚参加工作时,是地图厂商四维图新集团旗下的一家子公司,主要从事规划测绘相关软件研发的公司。当时我的项目是为勘测设计院提供相对应的应用软件,对地理信息和规划相关的图纸信息,几乎已经专业水平。事实上,规划设计大概和软件设计类似,有规划的设计、或无规划的设计,造成的结果几乎是天壤之别。 我们或许很容易就能设想到一个毫无规划设计的城市,纵横交错的路网、杂乱无章式的建筑布局、各种凌乱的棚户区设计,恰好象征着软件设计的无序性,也恰好体现了软件企业在经费不足、组织缺乏管理、开发者能力不足、软件随时随地想改就改时的行业现状,只能说这样的软件是最能符合当时实际劳动生产力水平的产品。 如图一所示,巴西棚户区,层层叠叠、风格迥异、密密麻麻,如果作为一个外人贸然来到这样的地方,大概很容易迷失期间、更不用说充斥在棚户区的各类毒品和黑社会。杂乱无章的建筑和街区,就像代码中错综复杂的调用链;而借助贫民区搞事的黑社会就像是代码中的异味或者bug,表面上看起来如此平静、与世无争、但是你永远也不知道啥时候会来一冷枪。 不要以为离我们很远,我们其实轻易就能写出这样的软件工程项目。不一定是“大泥球”系统,也有可能只是一些看似简单的业务系统,但内部代码逻辑,可能会复杂到令人窒息的程度。也许那个时候有个别开发者也许会试图靠自己的能力来改变局面,但是往往也会碍于屎山太大,难以下咽。

深入了解http协议

丶灬走出姿态 提交于 2020-11-10 08:40:21
No.1 声明 由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,雷神众测以及文章作者不为此承担任何责任。 雷神众测拥有对此文章的修改和解释权。如欲转载或传播此文章,必须保证此文章的完整性,包括版权声明等全部内容。未经雷神众测允许,不得任意修改或者增减此文章内容,不得以任何方式将其用于商业目的。 No.2 HTTP简介 Hypertext Transfer Protocol,超⽂本传输协议,和 HTML (Hypertext Markup Language 超⽂本标 记语⾔) ⼀起诞⽣,⽤于在⽹络上请求和传输 HTML 内容。 超⽂本,即「扩展型⽂本」,指的是 HTML 中可以有链向别的⽂本的链接(hyperlink)。 No.3 HTTP工作原理 用户输入地址后回车或点击链接 浏览器拼装 HTTP 报文并发送请求给服务器 服务器处理理请求后发送响应报文给浏览器 浏览器解析响应报文并使用渲染引擎显示到界面 No.4 HTTP请求报文 请求报文具体格式: 4.1 请求行信息 Request Method 请求方法 方法 作用 GET 请求获取由 Request-URI 所标识的资源 POST 请求服务器接收在请求中封装的实体,并将其作为由 Request-Line 中的 Request-URI 所标识的资源的一部分 HEAD 请求获取由

jpa遇到的 org.hibernate.PersistentObjectException: detached entity passed to persist异常

情到浓时终转凉″ 提交于 2020-11-10 05:33:31
jpa遇到的 org.hibernate.PersistentObjectException: detached entity passed to persist异常 参考文章: (1)jpa遇到的 org.hibernate.PersistentObjectException: detached entity passed to persist异常 (2)https://www.cnblogs.com/li1010425/p/6180684.html 备忘一下。 来源: oschina 链接: https://my.oschina.net/stackoom/blog/4696221

MyBatis里面的多对一,一对多

Deadly 提交于 2020-11-06 08:37:22
<association property="sysUser" column="USER_ID" javaType="com.junfeng.system.entity.SysUser" resultMap="com.junfeng.system.dao.SysUserDao.user_ResultMap"> 里面不用写字段 </association> 一对多 <collection property="albums" ofType="entity.Album" column="album_id" resultMap="dao.AlbumDao.AlbumMap"></collection> 来源: oschina 链接: https://my.oschina.net/u/3558134/blog/1941996

JPA多源数据库配置(达梦数据库)

。_饼干妹妹 提交于 2020-11-02 13:01:53
JPA多源数据库配置(达梦数据库) 1.准备工作 2.创建JPA配置 3.创建实体类 4.创建Repository 5.注解+切面实现两个数据源事物统一 6.创建Service 7.创建Controller 本篇文章主要介绍SpringBoot框架实现Jpa多源数据库的配置,本次使用国产数据库达梦数据库做为数据源。 1.准备工作 在pom.xml文件中引入Spring Data Jpa依赖: < dependency > < groupId > org . springframework . boot < / groupId > < artifactId > spring - boot - starter - data - jpa < / artifactId > < / dependency > 在application.yml中添加数据库的相关配置: spring : datasource : one : driver - class - name : dm . jdbc . driver . DmDriver url : jdbc : dm : / / 127.0 .0 .1 : 5236 / TESTONE username : TESTONE password : 1234567890 type : com . alibaba . druid . pool .