
正文
java生成证件照代码 java自动生成图片
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
java源代码是给你一个身份证号,通过面板身份证号的输入,显示出该身份证主人的出生年月,省份,性别等资料
我当初用struts1和hibernate做了个简单的!主要的逻辑代码在下面!数据库里号码对应的城市在网上可以查的到
package dao;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
import org.hibernate.Criteria;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
import org.hibernate.criterion.Expression;
import entity.Shenfenzhen;
public class IdDao {
private static Configuration configuration = new Configuration().configure() ;
private static SessionFactory sessionFactory =configuration.buildSessionFactory();
private static Session session = null;
public Info query(String s){
Info info = null;
StringBuffer stringBuffer = new StringBuffer(s);
if(s.length()==18){
String end = stringBuffer.substring(17);
//System.out.println(end);
if(!end.matches("\\d||x")){
return null;
}
}
else if(s.length()==15){
stringBuffer.insert(6, "19");
stringBuffer.append("3");
}
int i = Integer.parseInt(stringBuffer.substring(0, 6));
//System.out.println(i);
session = sessionFactory.openSession();
Criteria criteria = session.createCriteria(Shenfenzhen.class);
criteria.add(Expression.eq("num", i));
ListShenfenzhen list = criteria.list();
String address = null;
try {
address = list.get(0).getAddress();
}catch (Exception e) {
return null;
}
i = Integer.parseInt(stringBuffer.substring(16,17));
String sex = null;
if(i%2==0){
sex = "女";
}else{
sex = "男";
}
//System.out.println(i);
stringBuffer = new StringBuffer(stringBuffer.substring(6, 14));
// stringBuffer.insert(4, "-");
// stringBuffer.insert(7, "-");
//System.out.println(stringBuffer);
String ss = stringBuffer.toString();
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");
String brithday="";
int year=0;
int month =0;
int day =0;
try {
Date date = dateFormat.parse(ss);
//System.out.println(date);
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
year = calendar.get(Calendar.YEAR);
month = calendar.get(Calendar.MONTH)+1;
day = calendar.get(Calendar.DAY_OF_MONTH);
brithday = (String)(year + "年" + month + "月" + day + "日");
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
info = new Info(address, brithday, sex);
Calendar c = Calendar.getInstance();
int nowYear = c.get(Calendar.YEAR);
int nowMonth = c.get(Calendar.MONTH);
int nowDay = c.get(Calendar.DAY_OF_MONTH);
if(nowYearyear){
info = null;
}else if(nowYear ==year nowMonthmonth ){
info = null;
}else if(nowYear == year nowMonth==month nowDayday){
info = null;
}
closeSession(session);
return info;
}
// public static void main(String[] args){
// IdDao dao = new IdDao();
// dao.query("342522998711224513");
// System.out.println("x".matches("\\d||x"));
// }
private void closeSession(Session session){
if(session !=null){
session.close();
}
}
}
相关问答
Q1: JAVA 如何生成证书
下面产生一个自签证书。安装完J2SDK(这里用的是J2SDK1.4)后,在J2SDK安装目录的bin目录下,有一个keytool的可执行程序。利用keytool产生自签证书的步骤如下:
第一步,用-genkey命令选项,产生公私密钥对。在控制台界面输入:keytool -genkey -alias testkeypair -keyalg RSA -keysize 1024 -sigalg MD5withRSA。这里的-alias表示使用这对公私密钥产生新的keystore入口的别名(keystore是用来存放管理密钥对和证书链的,缺省位置是在使用者主目录下,以.keystore为名的隐藏文件,当然也可指定某个路径存放.keystore文件);-keyalg是产生公私钥对所用的算法,这里是RSA;-keysize定义密钥的长度;-sigalg是签名算法,选择MD5withRSA,即用RSA签名,然后用MD5哈希算法摘要。接下来,系统会提示进行一些输入:
输入keystore密码: abc123
您的名字与姓氏是什么?
[Unknown]: Li
您的组织单位名称是什么?
nbs
问题的其他解决办法参考 :
;t=JAVA+
Q2: java课程设计(证件照应用,包括人脸识别,裁剪,压缩等的)求实验总结
public BufferedImage replaceWithWhiteColor(BufferedImage bi) {
int[] rgb = new int[3];
int width = bi.getWidth();
int height = bi.getHeight();
int minx = bi.getMinX();
int miny = bi.getMinY();
/**
* 遍历图片的像素,为处理图片上的杂色,所以要把指定像素上的颜色换成目标白色 用二层循环遍历长和宽上的每个像素
*/
int hitCount = 0;
for (int i = minx; i width-1; i++) {
for (int j = miny; j height; j++) {
/**
* 得到指定像素(i,j)上的RGB值,
*/
int pixel = bi.getRGB(i, j);
int pixelNext = bi.getRGB(i+1, j);
/**
* 分别进行位操作得到 r g b上的值
*/
rgb[0] = (pixel 0xff0000) 16;
rgb[1] = (pixel 0xff00) 8;
rgb[2] = (pixel 0xff);
/**
* 进行换色操作,我这里是要换成白底,那么就判断图片中rgb值是否在范围内的像素
*/
//经过不断尝试,RGB数值相互间相差15以内的都基本上是灰色,
//对以身份证来说特别是介于73到78之间,还有大于100的部分RGB值都是干扰色,将它们一次性转变成白色
if ((Math.abs(rgb[0] - rgb[1]) 15)
(Math.abs(rgb[0] - rgb[2]) 15)
(Math.abs(rgb[1] - rgb[2]) 15)
(((rgb[0] 73) (rgb[0] 78))||(rgb[0] 100))) {
//进行换色操作,0xffffff是白色
bi.setRGB(i, j, 0xffffff);
}
}
}
Q3: java问题,看代码..
问题一:方法是对借口中的方法进行了重写吗?
答:没有接口的定义,不知道是不是对接口中的方法进行重写,不过继承了的接口的方法是必须要实现的。
问题二:另外comboxmodel作为参数传入的时候是怎么执行了mycombobox,中的方法了呢?
答:其实这样一种注入的接口编程方式,实际使用中应该传入的是一个实现了comboxmodel接口的非抽象类实例对象,然后就可以调用其方法了。
问题三:另外object item参数是由谁提供的呢,是什么。
答:这个需要看具体的对象调用的吧,你这里并没有给出,所以看不出来,不过可以肯定的就是该对象一定是mycombobox的一个实例。
问题三:mycombobox中的方法对应是下拉框的具体哪个结构。
答:public object getelementat(int index)得到的是证件的类型,public int getsize()得到的是证件类型的种类多少,这样可以控制choice的个数,其他的暂时不解。
关于java生成证件照代码和java自动生成图片的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。






