问题日志 记录,分享 联系方式:liuyingshengc4@sina.cn QQ:894347276

android 调用 webView 系统下载

webView.setDownloadListener(new DownloadListener() {
    @Override
    public void onDownloadStart(String url, String userAgent, String contentDisposition, String mimetype, long contentLength) {
        // TODO 实现下载逻辑
        if (url != null && url.startsWith("http://"))
            startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(url)));
    }
});

android  调用 webView 系统下载,简单的下载 代码直接嵌进去就可以了。


作者:营生 分类:Java 浏览:3669 评论:0

Windows adb.exe 停止工作问题处理

Android Studio 开发环境一直没问题,突然报adb.exe停止工作,无法调试。

打开Event Log

9:56	Gradle sync started

9:56	error: could not install *smartsocket* listener: cannot bind to 127.0.0.1:5037: 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。 (10048)

9:56	This application has requested the Runtime to terminate it in an unusual way.

端口被占用了,想起来昨天装了360手机助手,直接卸载完成就OK了。

blob.png

作者:营生 分类:Java 浏览:1407 评论:0

[java demo] Java 使用多线程

package study4;
import java.awt.FlowLayout;
import javax.swing.JFrame;
import javax.swing.JLabel;

public class ThreadDemo3 extends JFrame{
	JLabel countUpLabel = new JLabel("Count Up");
	JLabel countDownLabel = new JLabel("Count Down");
	
	class CountUpThread extends Thread{
		public void run(){
			int count = 1000;
			while(true){
				try{
					sleep(100);
				}catch(InterruptedException e){
				}
				if(count == 0){
					count = 1000;
				}
				countUpLabel.setText(Integer.toString(count--));
			}
		}
	}
	
	class CountDownThread extends Thread{
		public void run(){
			int count = 0;
			while(true){
				try{
					sleep(50);
				}catch(InterruptedException e){
					
				}
				if(count == 1000){
					count = 0;
				}
				countDownLabel.setText(Integer.toString(count++));
			}
		}
	}
	
	public ThreadDemo3(String title){
		super(title);
		init();
	}
	
	private void init(){
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		this.getContentPane().setLayout(new FlowLayout());
		this.add(countUpLabel);
		this.add(countDownLabel);
		this.pack();
		this.setVisible(true);
		new CountUpThread().start();
		new CountDownThread().start();
	}
	
	private static void constructGUI(){
		JFrame.setDefaultLookAndFeelDecorated(true);
		ThreadDemo3 frame = new  ThreadDemo3("Thread demo 3");
	}
	
	public static void main(String[] args){
		javax.swing.SwingUtilities.invokeLater(new Runnable() {
			
			@Override
			public void run() {
				// TODO Auto-generated method stub
				constructGUI();
			}
		});
	}
}


作者:营生 分类:Java 浏览:4617 评论:0

[java demo] Java 年龄计算

package study3;
import java.time.*;
import java.time.format.DateTimeFormatter;
import java.time.format.DateTimeParseException;
import java.util.Scanner;

public class AgeCalculator {
	DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-M-d");
	
	public Period calculateAge(LocalDate birthday){
		LocalDate today = LocalDate.now();
		return Period.between(birthday , today);
	}
	
	public LocalDate getBirthday(){
		Scanner scanner = new Scanner(System.in);
		LocalDate birthday;
		while(true){
			System.out.println("Please enter your birthday" + "in yyyy-mm-dd format (e.g 1980-9-28)");
			String input = scanner.nextLine();
			try{
				birthday = LocalDate.parse(input , formatter);
				return birthday;				
			}catch(DateTimeParseException e){
				System.out.println("Error! please try again");
			}
		}
	}
	
	public static void main(String[] args){
		AgeCalculator ageCalculator = new AgeCalculator();
		LocalDate birthday = ageCalculator.getBirthday();
		Period age = ageCalculator.calculateAge(birthday);
		System.out.println(birthday);
		System.out.printf("Today you are %d years , %d months" + "and %d days old%n" , age.getYears() , age.getMonths() , age.getDays());
	}
}


作者:营生 分类:Java 浏览:2964 评论:0

Exception in thread "main" java.lang.ClassNotFoundException: com.mysql.jdbc.Driver

刚开始学java 遇见报错。

Exception in thread "main" java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
	at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:264)
	at code.ConnMySql.main(ConnMySql.java:23)

写的是一个数据库操作DEMO,jdbc 驱动报错。

解决办法:

官网下载驱动:http://www.mysql.com/downloads/connector/j

image.png

下载好之后解压将文件放在项目下。

打开 project->properties选项

image.png

面板选择:image.png

添加mysql 驱动路径 即可:

java 代码:

package study;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

public class connMySql {
	public static void main(String[] args) throws Exception
	{
		Class.forName("com.mysql.jdbc.Driver");
		
		try(
				Connection conn = DriverManager.getConnection("**************", "user", "pwd");
				Statement stmt = conn.createStatement();
				ResultSet rs = stmt.executeQuery("select * from onethink_member");
			)
		{
			while(rs.next())
			{
				System.out.println(rs.getInt(1));
			}
		}
	}
}

执行结果:

image.png

作者:营生 分类:Java 浏览:1365 评论:0