-
2021-04-23 18:08:53
import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; public class Test { public static void main(String[] args) { People p1 = new People("b", "b"); People p2 = new People("a", "b11"); List<People> list = new ArrayList<People>(); list.add(p1); list.add(p2); boolean bool = list.stream().anyMatch(a -> a.getName().equals("a") || a.getNick().equals("a")); System.out.println(bool); List<People> data = list.stream().filter(a -> a.getName().equals("a") || a.getNick().equals("a")) .collect(Collectors.toList()); if(data!=null && data.size() > 0) { for (int i = 0; i < data.size(); i++) { System.out.println(data.get(i).getName() + "---" + data.get(i).getNick()); } } } }
更多相关内容 -
JS判断是否为JSON对象及是否存在某字段的方法(推荐)
2020-11-29 04:47:14实例如下: $.ajax({ type: 'POST', url: url, success(function(data){ //判断是否为JSON对象 if(typeof(data) == "object" && Object.prototype.toString.... //判断是否存在某字段 console.info(datas["key -
使用注解和反射判断指定的字段不能为空
2021-03-09 04:25:17判别指定对象的属性值是否为空,那确实可以,但是随着类的增多,判别对象的属性是否为空就非常的繁琐,所以可以使用自定义注解和反射来判定指定的字段是否为空。第一步:创建一个自定义注解package ...我们在写项目的时候,如何类比较少。判别指定对象的属性值是否为空,那确实可以,但是随着类的增多,判别对象的属性是否为空就非常的繁琐,所以可以使用自定义注解和反射来判定指定的字段是否为空。
第一步:创建一个自定义注解
package com.zczy.test.annoation;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
public @interface ParamsCheck {
/**
* 此注解就是过滤不需要的字段,来判断需要的字段是否为空
*/
String attributeName();
}
第二步:创建一个类,并在类的属性上加上自定义注解的标识,就是为了判断这些字段是否为空
package com.zczy.test.bean;
import com.zczy.test.annoation.ParamsCheck;
import lombok.Data;
@Data
public class Person {
@ParamsCheck(attributeName = "userName")
private String userName;
@ParamsCheck(attributeName = "id")
private String id;
private String sex;
public Person(String userName,String id,String sex){
this.userName = userName;
this.id = id;
this.sex = sex;
}
}
第三部:自定义一个返回类型的类
package com.zczy.test.utils;
import lombok.Data;
@Data
public class ValidResult {
private String msg;
private String code;
public ValidResult(){
}
public ValidResult(String msg,String code){
this.msg = msg;
this.code = code;
}
}
第四步:编写反射的代码
package com.zczy.test.utils;
import com.zczy.test.annoation.ParamsCheck;
import java.lang.annotation.Annotation;
import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.List;
public class CheckPointParamsHandlar {
public Class clazz;
private Field[] fields;
private T t;
public CheckPointParamsHandlar(T t){
this.t = t;
this.clazz = t.getClass();
//getDeclaredFields()返回Class中所有的字段,包括私有字段;
//getFields 只返回公共字段,即有public修饰的字段
this.fields = t.getClass().getDeclaredFields();
}
//判断已经注解的字段是否为空
public ValidResult getParamChecksResults(){
List list = new ArrayList<>();
ValidResult res = new ValidResult();
Boolean flag = true;
StringBuffer sb = new StringBuffer();
for(Field field : fields ){
//System.out.println(field);
//private java.lang.String com.zczy.test.bean.Person.userName
//private java.lang.String com.zczy.test.bean.Person.id
//private java.lang.String com.zczy.test.bean.Person.sex
//查看注解的必要字段不能为空--如果没有注解直接跳过
Annotation annotation=null;
annotation = field.getAnnotation(ParamsCheck.class);
if(annotation == null){
continue;
}
//判断注解过的字段是否为空
// System.out.println("annotation>>>>>"+annotation);
//annotation>>>>>@com.zczy.test.annoation.ParamsCheck(attributeName=userName)
//annotation>>>>>@com.zczy.test.annoation.ParamsCheck(attributeName=id)
String name = field.getName();
// System.out.println(name);
// userName
// id
// sex
char[] tempChar = name.toCharArray();
tempChar[0] -= 32;
String tempStr ="get"+ String.valueOf(tempChar);
list.add(tempStr);
//System.out.println("list>>>>>"+list);
// list>>>>>[getUserName, getId]
}
for(String str : list){
try {
Method method = clazz.getMethod(str);
//System.out.println("method>>>"+method);
// method>>>public java.lang.String com.zczy.test.bean.Person.getUserName()
//method>>>public java.lang.String com.zczy.test.bean.Person.getId()
Object invoke = method.invoke(t);
// System.out.println(invoke);
if(null == invoke || "".equals(invoke)){
flag = false;
sb.append(str.toLowerCase()+"不能为空").append(",");
}
} catch (NoSuchMethodException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}
}
if(flag == false){
res = new ValidResult(sb.toString(),"1");
}else{
res = new ValidResult("校验成功!","0");
}
return res;
}
}
测试类:
package com.zczy.test.Test;
import com.zczy.test.bean.Person;
import com.zczy.test.utils.CheckPointParamsHandlar;
import com.zczy.test.utils.ValidResult;
public class ParamsCheckTest {
public static void main(String[] args) {
Person person = new Person("1111","22","111");
ValidResult paramChecksResults = new CheckPointParamsHandlar<>(person).getParamChecksResults();
System.out.println(paramChecksResults.toString());
}
}
结果:
测试1:
测试2:
测试3:
测试4:
本文地址:https://blog.csdn.net/trainhui/article/details/107336671
如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!
-
java 反射判断一个类中是否含有某个属性字段
2021-02-28 11:58:48java 反射判断一个类中是否含有某个属性字段,因为 java 反射相关的API 中没有提供这个方法,因此需要我们自己判断思路是将类中所有的属性字段遍历,进行查找,代码如下public boolean hasField(Class c, String ...java 反射判断一个类中是否含有某个属性字段,因为 java 反射相关的API 中没有提供这个方法,因此需要我们自己判断
思路是将类中所有的属性字段遍历,进行查找,代码如下
public boolean hasField(Class c, String fieldName){
Field[] fields = c.getDeclaredFields();
for (Field f : fields) {
if (fieldName.equals(f.getName())) {
return true;
}
}
return false;
}
测试
新建User实体类
package com.tdemo.fanshe;
import lombok.Data;
@Data
public class User {
private String name;
private Integer age;
}
测试类
package com.tdemo.fanshe;
import java.lang.reflect.Field;
public class UserMain {
public static void main(String[] args) {
User user = new User();
System.out.println(hasField(user.getClass(), "name"));
System.out.println(hasField(user.getClass(), "age"));
System.out.println(hasField(user.getClass(), "addr"));
}
private static boolean hasField(Class c, String fieldName){
Field[] fields = c.getDeclaredFields();
for (Field f : fields) {
if (fieldName.equals(f.getName())) {
return true;
}
}
return false;
}
}
运行效果
至此完
本文地址:https://blog.csdn.net/wsjzzcbq/article/details/110239517
如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!
-
java判断数据库是否存在的方法
2021-02-27 11:18:07java判断数据库是否存在的方法发布时间:2020-06-10 10:12:11来源:亿速云阅读:208作者:Leah这篇文章主要为大家详细介绍了java判断数据库是否存在的方法,文中示例代码介绍的非常详细,零基础也能参考此文章,感...java判断数据库是否存在的方法
发布时间:2020-06-10 10:12:11
来源:亿速云
阅读:208
作者:Leah
这篇文章主要为大家详细介绍了java判断数据库是否存在的方法,文中示例代码介绍的非常详细,零基础也能参考此文章,感兴趣的小伙伴们可以参考一下。
代码:public static boolean isExistDatabase(String database) {
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;// 数据库结果集
try {
conn = getConnection();
stmt = conn.createStatement();
String sql = "SELECT COUNT(*) FROM information_schema.schemata WHERE schema_name=\"" + database + "\"";
System.out.println(sql);
rs = stmt.executeQuery(sql);
if (rs.next()) {
if (rs.getInt(1) == 0) {
return false;
} else {
return true;
}
}
return false;
} catch (Exception e) {
throw new TenantException(e.getMessage(), Status.INTERNAL_SERVER_ERROR);
} finally {
try {
if (rs != null) {
rs.close();
}
if (stmt != null) {
stmt.close();
}
if (conn != null) {
conn.close();
}
} catch (SQLException e) {
throw new TenantException("mysql关闭连接失败:" + e.getMessage(), Status.INTERNAL_SERVER_ERROR);
}
}
}
关键SQL语法:String sql = "SELECT COUNT(*) FROM information_schema.schemata WHERE schema_name=\"" + database + "\"";
以上就是java判断数据库是否存在的方法的详细内容了,看完之后是否有所收获呢?如果想了解更多相关内容,欢迎关注亿速云行业资讯!
-
Java判断一个类里是否存在某个属性
2021-02-28 08:21:17Java判断一个类里是否存在某个属性测试pojo类,比方我有个User类@Getter@Setterpublic class User {private Long id;private String name;private Integer age;private String email;}我现在判断User是否存在某个... -
java遍历集合某字段,判断是否存在相同的值。
2021-03-10 07:08:5911-07 回答注:for (GoodsBean goods : list)是对链表进行循环遍历spid--商品ID,spmch--商品名称这个例子是我从现在做的一个购物车的例子里抽出来的一部分,可以运行,你试试 ,呵呵/*** 判断一个list里某个字段是否... -
Java8判断字段是否在数组中
2020-06-19 11:25:161.判断是否在int数组中,例: Integer[] intList = {1, 2, 3}; boolean contains = IntStream.of(intList).anyMatch(x -> x == 1); System.out.println(contains); // 返回true contains = IntStream.of(intList)... -
如何使用JAVA 8检查对象的所有字段是否为NULL? - java
2021-03-17 21:25:38我想检查对象的所有字段是否为null或不使用Java8。尝试过here中提到的不同方法,但是我希望使用Java 8功能来完成。例如:class person{String name;Long id;//getter & setter}Person person = new Person();... -
ES查询不存在某个字段
2021-12-22 18:45:09当对原有的索引添加字段后,想要查看某个字段在原有库里不存在 ip:port/tbprofessionaldata/_search 查看note不存在的数据 { "query": { "bool": { "must_not": { "exists": { "field": "note" } } } } } -
Java判断Mysql数据库字段为Null时的处理方法
2020-12-28 17:56:28如何判断? 1、user.getName()==null,其结果是false 2、user.getName().isEmpty()。抛出异常java.lang.NullPointerException 3、user.getName().length()。抛出异常java.lang.NullPointerEx -
java怎样判断list集合中存在某个元素
2021-02-26 16:33:39展开全部contains方法用62616964757a686964616fe59b9ee7ad9431333363396331于判断列表中是否包含指定元素。如果列表中包含指定元素,则返回true,否则返回false。示例代码如下:publicclassTestListContainsDemo{... -
java中如何判断map集合对象中是否存在指定key
2021-02-26 21:27:21该方法判断Map集合对象中是否包含指定的键名。如果Map集合中包含指定的键名,则返回true,否则返回false。语法:containsKey(Object key)判断方法:首先定义一个map对象,然后通过“put()”方法向集合中添加对象,... -
java中如何判断字符串是否存在于list集合中
2021-02-27 23:00:31可以使用包含方法 contains,若存在,返回true,若不存在,则返回false。代码示例如下:(相关学习视频教程分享:java视频教程)package com.jianhu.Test;import java.text.SimpleDateFormat;import java.util.... -
Mongodb中查询某个字段不存在或者为null
2021-04-21 14:25:44查询集合c中y的值为null或者不存在 db.c.find({y: null}) 查询集合c中y的值为null,(仅返回y的值为null的数据,不会返回不存在的) db.c.find({“y”: {$type : 10}}) $type为10表示Null 或者 db.c.find({“y... -
Java 判断数据库和表是否存在,若不存在,则创建
2019-03-13 11:28:40我们创建创建数据库,可以在mysql或者navicat中自定义,然后利用jdbc连接Java程序和数据库,进行数据间的增删给查操作, 有这样一个问题,当我们在设计一个项目的时候,需要在运行项目时创建数据库,但是又不能让... -
ElasticSearch Java查询某字段既不为null也不为空的条目
2020-06-09 20:04:14方案一: 使用existsQuery关键字,查询出某些字段存在(值为null)的条目,但是不能过滤出值为""的字段 BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery(); List<QueryBuilder> must = ... -
创建一个数据库表中不存在的字段,并且用在java对象中
2019-02-15 19:13:27实体类中使用了@Table注解后,想要添加表中不存在的字段,就要使用@Transient这个注解了。 -
Java 判断一个集合中是否存在另外一个集合的元素
2021-04-17 09:16:43java 取交集方法retainAll有两个集合newCoures和oldCourses,判断这两个集合是否包含相同的对象或元素,可以使用retainAll方法:oldCourses.retainAll(newCoures)。如果存在相同元素,oldCourses中仅保留相同的元素... -
Java判断集合中是否存在某个元素的方法
2020-05-29 19:09:35会遍历List中的每一个元素,再调用每个元素的equals()方法去跟contains()方法中的参数进行比较,如果有一个元素的equals()方法返回true则contains()方法返回true,否则所有equals()方法都不返回true,则contains()... -
ES 查询不存在的某个字段
2020-08-19 22:18:04更新了es数据的索引,查看下是否全部都有新的field. 不存在 GET index/_search { "query": { "bool": { "must_not": { "exists":{"field":"filedX"} } }} } 如果存在,使用must -
js和java中判断json数据中是否含有某字段
2018-06-20 14:23:30js中 从服务端传过来一个json数据为data 1.data["key"] != undefined ...//这种有缺陷,如果这个key定义了,并且就是很2的赋值为undefined,那么这...java程序中判断是否存在 data 为从浏览器传回.. -
Java判断字符串是否在list集合中存在
2020-06-04 11:37:52public static void main(String[] args) { ArrayList<String> list = new ArrayList<>(); list.add("pad_aas");...使用contains方法,底层是用equals进行判断 public boolean contai... -
java 判断class是否有指定注解
2020-08-11 09:55:00Class<?> aClass = t.getClass(); SqlTable sqlTableAnnotation = aClass.getAnnotation(SqlTable.class);...SqlTable.class就是对应的注解,判断返回的对象是否是null就知道是否有对应的注解了 -
mybatis下MERGE根据字段判断数据不存在则增加,存在则不处理
2019-03-19 19:25:381.先直接贴代码,这个代码是测试有效的。...insert id="addOrUpdate" parameterType="java.util.List"> MERGE INTO HOUS a USING( <foreach collection="list" item="item" index="index" sepa... -
判断list集合对象中的字段是否存在某个值
2021-02-21 20:15:48if(list.stream() .filter(item->item.getUserId() .equals("123456")) .findAny() .isPresent()) { //存在则代码块执行业务逻辑代码 } -
ElasticSearch Java过滤某字段既不为null也不为空的数据
2021-06-01 14:41:06使用existsQuery关键字,查询出某些字段存在(值为null)的条目,但是不能过滤出值为""的字段 queryBuilder.must(QueryBuilders.boolQuery().must(QueryBuilders.existsQuery("字段名称")));