Java EE

怒爬某破Hub站资源,简单4步撸个鉴黄平台!

∥☆過路亽.° 提交于 2020-08-16 08:31:43
      2020年Java原创面试题库连载中   (共18篇)   【032期】JavaEE面试题(四)Spring(2)   黄色已经是我们所不容然而却防不胜防的,尤其是对于做内容的工具和平台,所以花了30分钟搭建了一个鉴黄平台,分享给大家。    数据准备   找了 N 多资源都不能解决问题,于是怒爬某 Bub资料,备用准备验证鉴黄效果。    账号准备   本文使用的是 UCloud 提供的 UAI-Censor,目前他支持图片,暴恐、涉政会陆续上线。他提供了每日2000张免费调用额度,所以无论对于测试还是小众的工具足够了。   1、使用如下链接注册账号   https://www.ucloud.cn/   2、创建 UAI-Censor 应用   获得应用 ID 进行鉴黄 API 调用的时候使用,注册成功以后进入控制台,搜索 UAI,然后点击 AI 内容审核      点击创建应用,输入自定义的应用名称,点击确定      点击确定以后会显示成功的弹框,高亮部分就是你的应用ID,留着备用      3、获取公钥、私钥,应用ID   获取了,但是不能所有人都操作吧?所有需要去注册一个公钥和私钥,这样只有你自己可以使用。点击进入如下链接    https://console.ucloud.cn/uapi/apikey    点击显示即可查看公钥私钥了     

tomcat 三种部署方式以及server.xml文件的几个属性详解

非 Y 不嫁゛ 提交于 2020-08-16 07:57:04
一、直接将web项目文件件拷贝到webapps目录中   这是最常用的方式,Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应用。如果你想要修改这个默认目录,可以在conf下的server.xml文件里修改Host标签里的appBase值。   这个方法实际上和在IDE开发环境里部署项目是一样的。   用此方法的访问路径为http://localhost:8080/webname 二、修改Server.xml文件    在conf下的server.xml文件里找到Host标签,在里面添加如下代码: 1 <Context path="/jfinal_demo" docBase="F:\work\jfinal_demo\WebRoot" reloadable ="true" debug="0" privileged="true"> 2 </Context>   path:是访问时的根地址,表示访问的路径,可以自定义,如上述例子中,访问该应用程序地址如下:http://localhost:8080/jfinal_demo;   docbase:表示应用程序的路径,docBase可以使用绝对路径,也可以使用相对路径,相对路径相对于webapps ;   reloadable:表示可以在运行时在classes与lib文件夹下自动加载类包。

新网站快速被搜索引擎收录的方法

99封情书 提交于 2020-08-16 07:18:46
1、通过“搜索引擎网站登录入口”提交你的网站。 这个不需要多说,一个新网站只要一上线,要做的第一件事肯定是提交搜索引擎网站登录入口。这里给大家分享几个常见搜索引擎网站登录入口,供大家使用: 以下是登录几个重要搜索引擎的网站登录入口地址: 百度网站登录入口http://www.baidu.com/search/url_submit.html Google网站登录入口http://www.google.com/intl/zh-CN/add_url.html Google英文:http://www.google.com.hk/addurl/?continue=/addurl Yahoo网站登录入口http://search.help.cn.yahoo.com/h4_4.html Bing网站登录入口http://search.msn.com.cn/docs/submit.aspx Dmoz网站登录入口http://www.dmoz.com/World/Chinese_Simplified Coodir网站目录登录入口http://www.coodir.com/accounts/addsite.asp Alexa网站登录入口http://www.alexa.com/help/webmasters 搜狗网站收录提交入口http://www.sogou.com/feedback

看完这篇前后端接口联调再也不用相互甩锅了

落花浮王杯 提交于 2020-08-16 06:17:02
介绍   在前后端分离的开发场景下,不可避免的会有前后端联调。在联调阶段,经常会遇到各式各样的问题,比如乱码问题、前端传的数据(字符串、数组、Json对象)后端无法正常解析等问题。   本文希望从源头着手,理清问题的根本原因,快速定位出现问题的位置,让前后端联调得心应手,让甩锅不再那么容易…… HTTP协议   之所以这里会介绍一下HTTP协议,是因为前后端联调离不开HTTP。了解了HTTP协议,有助于更好的理解数据传输的流程,以及更好的分析出到底是在哪个环节出了问题,方便排查。 1. 简介   首先,http是一个无状态的协议,即每次客户端和服务端交互都是无状态的,通常使用cookie来保持状态。   下图为http请求与响应的大致结构(本部分配图均来自于《HTTP权威指南》): 说明:   从上图中可以看出,HTTP请求大致分为三个部分:起始行、首部、主体。在请求起始行里,表面了请求方法、请求地址以及http协议的版本。另外,首部即是我们常说的http header。 2. HTTP method   下面是常用的HTTP请求方法以及介绍: 说明: 我们常用的一般为get于post。 是否包含主体的意思为请求内容是否带主体。例如,在get方式下由于不带主体,只能使用url的方式传参。 3. Content-type   HTTP传输的内容类型与编码是由Content

零基础学习IT技术哪个编程语言好?为什么说首选Java

眉间皱痕 提交于 2020-08-16 06:11:27
我国对java工程师人才的需求数量还将持续增加,工作起点高,薪资待遇好,职业寿命长中国软业行业的快速发展让人们看到了IT的未来,二是java这种语言的应用广泛性使得人才缺口越来越大,就业和薪资有着其他行业无法比拟的优势java语言是目前全球的IT行业最常用的一种编程方式,大部分企业应用程序和手机软件都是用java开发的。 影响大家做出选择的原因可能只是因为听说Java前景好、在编程语言排行榜上一直位于前三等等之类的原因。但是作为一门编程语言,Java具体好在哪里,大家似乎并不怎么关心,那么今天我就来告诉你为什么Java是编程初学者的首选: Java是一个面向对象的编程语言,容易理解。它略去了多重加载、指针等难以理解的概念。并且实现了自动垃圾回收,大大简化了程序设计。跨平台是Java最大的优势。Java运行在JVM(Java虚拟机)上,在任何平台只要安装了JVM。Java就可以运行。它架构在操作系统之上,屏蔽了底层的差异。真正实现了“Write once,run anywhere”。 Java中没有指针,这样就没有办法直接访问内存了。另外Java也不容易出现内存泄露。Java内置对多线程的支持,可以方便地在程序中实现多线程的功能。不像其他不支持多线程的语言,需要调用操作系统的多线程功能才能完成多线程的实现。 大型企业级应用,主要使用JAVA EEE,比如大型企业管理系统,最典型的就是

浅谈Java反射机制

寵の児 提交于 2020-08-16 06:05:28
Java反射机制 前言: 最近在看SpringBoot,下午看视频的时候,讲解老师在分析源码,其中源码很多地方用到了反射机制,感觉并没有学习太清楚。之前学习JavaSE的时候有些操之过急,没有好好理解反射机制,于是下午又重新复习了一遍反射机制。 创建对象的几种方式 new关键字 + 该类的构造方法; 反序列化(和序列化相对应,在I/O流中进行数据传输使用较多,这里篇幅有限,请自行百度); 3)java反射机制 反射的概念 官方解释:在运行过程中,可以动态根据类的地址来获取类的信息(构造方法,成员方法,成员变量),以及动态根据类的信息来创建对象,来调用对象的方法、属性的功能成为反射机制。 个人见解: 反射机制就是可以把一个类,类的成员(函数,属性),当成一个对象来操作 反射的作用 可以动态获取类的信息,进一步实现需要实现的功能 反射相关的类 Class 用来封装每个类的字节码信息,Java 中一旦某个类被加载到内存中,将会把类的信息封装到一个Class对象中。 Constructor 构造方法 Method 方法 Field 属性 Class 对象 使用反射机制来操作,首先我们需要在运行时获取类的Class对象。 Class对象中包含类的信息(一个类的Class对象只有一个,与字节码文件对应)。 获取Class的三种方式: (1)通过Object中的getClass() (2

页面查询案例(使用redis数据库)

泪湿孤枕 提交于 2020-08-16 04:07:46
需求: 1.提供一个index.html页面,页面中有个省份,下拉列表 2.当页面加载完成时,发送ajax请求。加载所有省份 前期项目初步搭建: index.html $(function(){ $.get("url",{},funtion(data){ //url-查询servlet路径,{}不要参数,data为返回的数据,填充到省份列表中 //因为有查询数据库因此有三层架构service(findProvinceServlet)-service(ProvinceService)-dao(ProviniceDao)查询数据库 }) }) ProvinceDao 1.声明JDBCTemplate,查询数据库 2.返回查询的值(List集合) ProvinceService 1.声明dao 2.通过Dao返回查询所有的结果集 findProvinceServlet 1.调用service完成查询,返回List<Province> 2.将数据返回,因为采用的是Ajax请求,因此需要将数据序列化Json 3.响应 整体代码: index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <script src="js/jquery-3.3.1.min.js"><

SpringCloud中实现文件上传下载的三种解决方案(推荐)

非 Y 不嫁゛ 提交于 2020-08-16 03:59:36
第一点:Java代码实现文件上传 FormFile file = manform.getFile(); String newfileName = null; String newpathname = null; String fileAddre = "/numUp"; try { InputStream stream = file.getInputStream();// 把文件读入 String filePath = request.getRealPath(fileAddre);//取系统当前路径 File file1 = new File(filePath);//添加了自动创建目录的功能 ((File)file1).mkdir(); newfileName = System.currentTimeMillis() + file.getFileName().substring( file.getFileName().lastIndexOf('.')); ByteArrayOutputStream baos = new ByteArrayOutputStream(); OutputStream bos = new FileOutputStream(filePath + "/" + newfileName); newpathname = filePath + "/" +

这份书单,想要晋级高级Java工程师的朋友值得一看!

自作多情 提交于 2020-08-16 03:57:45
点击蓝色“程序员书单”关注我哟 加个“星标”,每天带你读好书! ​ 经过了10多年的发展,Java Web从开发框架到社区都已经非常成熟,很多程序员都可以通过使用框架很快速地搭建起一个Java Web应用,特别是近几年SpringBoot大热,干脆连配置都不需要了解了,直接一键式编译部署运行,让Java工程师的入门成本变得越来越低。 但于此同时,互联网公司对于Java的应用场景也在不断地升级换代,从单机部署再到分布式,从SOA再到微服务,Java后端技术栈变得更加庞大,对于工程师的要求也越来越高,特别是对于大公司来说更是如此,也正因为如此,对Java工程师的考察已经不限于Java Web的那套东西了,企业往往会提出更高的要求,比如需要你能够熟练使用设计模式,了解Java并发编程和JVM调优,甚至是了解分布式技术、微服务以及中间件等等。 今天的这份书单并不针对某一种技术,而是想介绍一些一些Java进阶方面的书籍,其中包括Java的一些编码规范,代码最佳实践,以及调优指南,另外还介绍了一些Java编程的黑科技,比如Java异步编程,相信这些书籍对你的Java进阶学习会有所帮助。 Java进阶系列书单 ​ 阿里巴巴Java开发手册 《阿里巴巴Java开发手册》的愿景是码出高效,码出质量。它结合作者的开发经验和架构历程,提炼阿里巴巴集团技术团队的集体编程经验和软件设计智慧

ssm框架实现图片上传显示并保存地址到数据库

僤鯓⒐⒋嵵緔 提交于 2020-08-16 03:44:28
本案例是通过springmvc+spring+mybatis框架以商品上传为例,实现的图片上传功能,并把图片的地址保存到数据库并在前台显示上传的图片。 本项目是使用maven搭建的项目,首先看下项目结构 相关配置自行搜索,下边直接实现上传功能 1.创建数据库 DROP TABLE IF EXISTS `product`; CREATE TABLE `product` ( `pid` int(11) NOT NULL AUTO_INCREMENT, `pimage` varchar(255) DEFAULT NULL, PRIMARY KEY (`pid`) ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8; -- ---------------------------- -- Records of product -- ---------------------------- INSERT INTO `product` VALUES ('2', '6c648d82-dc29-4b92-855e-491741e092a21.jpg'); INSERT INTO `product` VALUES ('3', '80f26905-7342-492c-be6e-c3f0ad81c2aa1.jpg'); INSERT INTO