一、怎么实现java敏感数据脱敏?
反射只能获取到字段。局部变量是无能为力的。所以如果将a/b设置为字段,那么就可以。为了防止字段被污染,可以使用private字段。class Foo{private static String a;private static String b;public static void main(String[] args){String c="a"
;Field f=Foo.class.getDeclaredField(c)
;f.setAccessible(true)
; // 在别的类中调用必须加,这里可以不加String res=(String)f.get(null);}}
二、java实现udp接收与发送数据?
前期知识 如果说面向连结的 TCP/IP 通信是打电话,必须先拔通(建立连结),然后再通话(收发数据),那么基于 IP 的非面向连结的 UDP 通信就像发短信啦,UDP 通信不用建立连结就可发送,至于目标机器是否在线,地址是否正确都不紧要,UDP 只管发,至于发到了没有,它是不负责的。 代码实现在同一个界面实现接收和发送 主界面:
发送端: 接收端:三、用java写个接口实现数据对接?
application/x-www-form-urlencoded:
application/json:
通过上面例子发现,结构简单的时候formdata数据更简单,结构复杂的时候(array)JSON数据更简单。
题目问到Java接口,应该分三种情况。
如果是JSP等服务器端模板技术,再加上一些jQuery AJAX。POST的时候,默认contentType都是application/x-www-form-urlencoded。可改成application/json,看自己。
如果用前端框架,Angular、React、Vue。POST的时候,默认contentType都是application/json。建议用JSON,别改。JSON就是JS的一个子集,既方便JS解析,也方便人读。
Java服务器端对其他服务器端通信。其实更建议用XML,特别是和第三方服务通信的时候。如果公司内部自己的几个Java服务通信,用JSON就好。
现在Java Web开发,最常见的是上面第2种情况。所以,当用Spring MVC的时候,建议用@RestController
如果用@Controller,需要这么写:
如果用@RestController,不需要写@ResponseBody,也不需要指定consumes和produces类型,默认都是application/json。可以简化成这样:
四、java中如何用scanner实现输入数据?
java中Scanner类常用来进行数据的输入。
Scanner 类在java.util包中。
操作实例:
import java.util.Scanner;
public class Main {
public static void main(String args[]){
Scanner sc = new Scanner(System.in);
System.out.print("imput name:");
String name = sc.nextLine();
System.out.print("input age:");
int age = sc.nextInt();
System.out.print("input height:");
float height = sc.nextFloat();
System.out.print("name:" + name + "\n" + "age:" + age + "\n" + "height:" + height);
}
}
输出结果如下图:
五、JAVA怎么实现循环输入?
您好,很高兴能回答你的问题。
java实现循环输入方法。
双for
Scanner sc = new Scanner(System.in);
int i,a,t = sc.nextInt();
for(;0<t;t--){
for(i=0;(i<n)&&(a<=10);i++) a = sc.nextInt();
if(10<a) System.out.println(n);
}
用getLine() 或者其他流类的getLine() 来读取就行了
六、java怎么输入数据?
1.用Scanner类:
import java.util.Scanner;
public static void main(String [] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入你的姓名:");
String name = sc.nextLine();
System.out.println("请输入你的年龄:");
int age = sc.nextInt();
System.out.println("请输入你的工资:");
float salary = sc.nextFloat();
System.out.println("你的信息如下:");
System.out.println("姓名:"+name+"\n"+"年龄:"+age+"\n"+"工资:"+salary);
}
这段代码已经表明,Scanner类不管是对于字符串还是整型数据或者float类型的变量,只需做一点小小的改变,就能够实现功能。
2.其中Scanner in = new Scanner(System.in);这一句是关键。这一句的意思是:通过new Scanner(System.in)创建一个Scanner,控制台会一直等待输入,直到敲回车键结束,把所输入的内容传给Scanner,作为扫描对象。
然后如果想要获取输入的内容,就需要调用Scanner的nextLine()方法,因此就用到了String name = in.nextLine(),int age = in.nextInt(),double height = in.nextDouble()这三句来获取输入的内容。
3.运行一下就会发现程序并没有让你输入苹果的英文,而是直接回车了,那是因为你输入完年龄之后的那个回车被nextLine()吃掉了,因此它并没有输出什么,但如果用in.next()的话,它是可以输入的。(下面是两种运行结果)
区别:nextLine()方法返回的是Enter键之前的所有字符,它是可以得到带空格的字符串的。
next()会自动消去有效字符前的空格,只返回输入的字符,不能得到带空格的字符串。
七、JAVA实现报表打印?
采用报表打印插件是最好的方式。报表插件优势:报表插件在服务器端不驻留程序,服务器只要提供约定格式的 XML 数据就行了。所以有如下优势:
1、支持所有的WEB服务器平台。
2、报表的生成是在各自客户端电脑上,这样大大减轻了服务器的负载压力,能够做到更大的并发访问。
3、插件在客户端运行是电脑原生程序,与桌面程序具有一样的运行性能,并能开发出桌面程序类似的报表功能。
4、能驱动打印机直接进行打印,是WEB软件实现打印功能的最好方式。
八、Java实现彩票程序?
import java.util.ArrayList;import java.util.Collections;import java.util.List;import java.util.Random;public class Main { public static void main(String[] args) { //红球 33 选6 List<Integer> redBall = new ArrayList<Integer>(); for(int i=0;i<33;i++){ redBall.add(i+1); } System.out.println("开奖红球:" + select(redBall, 6)); //篮球16选1 List<Integer> blueBall = new ArrayList<Integer>(); for(int i=0;i<16;i++){ blueBall.add(i+1); } System.out.println("开奖蓝球:" + select(blueBall, 1)); } public static List<Integer> select(List<Integer> list,int count){ List<Integer> selectedList = new ArrayList<Integer>(); Random random = new Random(); for(int i=0;i<count;i++){ int index = random.nextInt(list.size()); Integer number = list.get(index); selectedList.add(number); list.remove(index); } Collections.sort(selectedList); return selectedList; }}
九、java如何实现一秒并发多条数据?
在JAVA中,向MYSQL插入多条数据如果主键,mysql是会报错不让插入的。
十、java数据放在了list中,如何实现前台分页?
针对如何实现前台分页,我提供一个thymeleaf+springboot+pagehelper的解决实例。
1.前端页面的代码如下:
截图中的questions对象就是我们在后端查到的list集合对象,将后端查询到的集合通过SpringBoot中的Model传值给questions,前端就能通过question获取分页所必须的数据。
1.1 pagehelper中的引入:
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.2.12</version>
</dependency>
1.2 思路:
分页的时候前端发起请求,进入index页面的时候,会携带pageNum(不是必须的)和pageSize(无要求),后端判断两个参数的实际值,并设置默认然后调用startPage方法开始分页,注意紧跟着这个方法后面就是一个数据库查询语句的方法(XXXMapper.queryXXX),然后new PageInfo<XXX>就能够进行分页,最后设置到model里面去。
1.3 controller中的代码实现
1.4 controller层中的findList(pageNum, pageSize)方法里就是用pagehelper实现分页的,代码如下:
至此,我们就实现了分页查询了,效果如下图:
以上是使用thymeleaf+springboot+pagehelper实现分页的思路,希望对你有帮助,由于我是第一次用悟空问答回答问题,没有找到markdown的编辑方式,在文本框中放代码格式全部乱了,所以代码部分就是直接上图,可能会比较模糊。