易截截图软件、单文件、免安装、纯绿色、仅160KB
热门标签: c c# c++ asp asp.net linux php jsp java vb Python Ruby mysql sql access Sqlite sqlserver delphi javascript Oracle ajax wap mssql html css flash flex dreamweaver xml
 最新文章 : java

Java 多线程编程之三:synchronized 关键字的使用

Java 多线程编程之三:synchronized 关键字的使用
        带有 synchronized 关键字的方法代表这个方法加锁。恰当而又灵活地运用 synchronized 关键字,是多线程编程的必修课。
  1、synchronized关键字的作用域有二种:
  1)是某个对象实例内,synchronized aMethod(){}可以防止多个线程同时访问这个对象的synchronized方法(如果一个对象有多个synchronized方法,只要一个线程访问了其中的一个synchronized方法,其它线程不能同时访问这个对象中任何一个synchronized方法)。这时,不同的对象实例的 synchronized方法是不相干扰的。也就是说,其它线程照样可以同时访问相同类的另一个对象实例中的synchronized方法;
  2)是某个类的范围,synchronized static aStaticMethod(){}防止多个线程同时访问这个类中的synchronized static 方法。它可以对类的所有对象实例起作用。
  2、除了方法前用synchronized关键字,synchronized关键字还可以用于方法中的某个区块中,表示只对这个区块的资源实行互斥访问。用法是: synchronized(this){/*区块*/},它的作用域是当前对象。
        synchronized ......

java mail 相关

【声明】转帖地址 : http://tech.ddvip.com/2009-04/1239788309115180.html
MailSenderInfo .java :
package com.util.mail;
import java.util.Properties;
/**
* @author AllanKing
* @date 2009-11-12
*/
public class MailSenderInfo {
// 发送邮件的服务器的IP和端口
private String mailServerHost;
private String mailServerPort = "25";
// 邮件发送者的地址
private String fromAddress;
// 邮件接收者的地址
private String toAddress;
// 登陆邮件发送服务器的用户名和密码
private String userName;
private String password;
// 是否需要身份验证
private boolean validate = false;
// 邮件主题
private String subject;
// 邮件的文本内容
private String content;
// 邮件附件的文件名
private String[] attachFileNames;
/** */
/**
* 获得邮件会话属性
*/
public Properties getProperties() {
Properties p = new Properties();
p.put("mail.smtp.host", this.mailServerHost);
p.put("mail.smtp.port", this.mailServerPort);
p.put("mail.smtp.auth", validate ? "true" : "f ......

带着java学python

 python正文:     和其它语言一样,我们可以以命令行的形式给你的python程序传递参数,pyhton能够自动把命令行参数以字符串列表的形式存储在sys模块的arv变量。ok,我们先来看个例程:
 
#  文件名: printargs.py
#用途:演示python的传参
import sys
print sys.argv
在命令行输入:python printargs.py aaa bbb ccc
输出结果:['E:\\development\\python\\test\\src\\test.py', 'aaa', 'bbb', 'ccc']
其中:sys.argv[0]=E:\\development\\python\\test\\src\\test.py
         sys.arg[1]=aaa      依次类推......
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
;>>>>>>>>>>>>>>>> ......

JAVA SQLSERVER数据库连接

 package cn.ctgu.edu.ac;
import java.sql.*;
public class test {
 /**
  * @param args
  */
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  String url="jdbc:sqlserver://localhost:1433;Database=网上书店管理系统;integratedSecurity=true;"; //用widows身份登录
  String sql="select * from users";
  Connection conn=null;
  try
  {
   Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
   conn=DriverManager.getConnection(url);
   Statement state=conn.createStatement();
   ResultSet rs=state.executeQuery(sql);
   while(rs!=null&&rs.next())
   {
    System.out.println(rs.getString(1)+" "+rs.getString(2)+" "+rs.getString(3)+" "+rs.getString(4)+" "+rs.getString(5)+" "+rs.getString(6));
    
   }
&nbs ......

JAVA SQLSERVER数据库连接

 package cn.ctgu.edu.ac;
import java.sql.*;
public class test {
 /**
  * @param args
  */
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  String url="jdbc:sqlserver://localhost:1433;Database=网上书店管理系统;integratedSecurity=true;"; //用widows身份登录
  String sql="select * from users";
  Connection conn=null;
  try
  {
   Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
   conn=DriverManager.getConnection(url);
   Statement state=conn.createStatement();
   ResultSet rs=state.executeQuery(sql);
   while(rs!=null&&rs.next())
   {
    System.out.println(rs.getString(1)+" "+rs.getString(2)+" "+rs.getString(3)+" "+rs.getString(4)+" "+rs.getString(5)+" "+rs.getString(6));
    
   }
&nbs ......

Java调用C/C++ – JNI

昨天才看到,但是遇到一些问题,今天解决了,记下……(参考:http://netbeans.org/kb/55/beginning-jni-part1.html)
我用的是Netbeans 6.7,但是和其他的也应该大同小异吧。 基本流程: Java这边的:
创建java文件(带native的),还要记得在类中加入:System.loadLibrary(xxx) 。
然后用javah来生成C/C++的头文件(比如:javah –o pzc.h –jni –classpath … pzjava.Main)。 C这边的:
做一个“中间层”的C或者C++文件,include刚才生成的头文件,把方法复制下来。
还要记得把%JAVA_HOME%\include\和%JAVA_HOME%\include\win32添加到编译器的头文件搜索路径中(还要添加上刚刚生成的头文件的搜索路径) 。
要注意设置好编译器输出的动态库文件名,要和loadLibrary中的一致(在Windows下如果xxx是"pzc”,那输出的就是pzc.dll,如果是linux,就是libpzc.so)。
还要注意设置编译器的其他参数,如:--add-stdcall-alias(在Windows下需要)(查看gcc手册就知道它的意思)。
编译好dll后把dll复制到java项目空间就行了。 有时gcc选项还要加-m32,按照原文所说的,意思应该是,如果是在64位的机器上想 ......

Java调用C/C++ – JNI

昨天才看到,但是遇到一些问题,今天解决了,记下……(参考:http://netbeans.org/kb/55/beginning-jni-part1.html)
我用的是Netbeans 6.7,但是和其他的也应该大同小异吧。 基本流程: Java这边的:
创建java文件(带native的),还要记得在类中加入:System.loadLibrary(xxx) 。
然后用javah来生成C/C++的头文件(比如:javah –o pzc.h –jni –classpath … pzjava.Main)。 C这边的:
做一个“中间层”的C或者C++文件,include刚才生成的头文件,把方法复制下来。
还要记得把%JAVA_HOME%\include\和%JAVA_HOME%\include\win32添加到编译器的头文件搜索路径中(还要添加上刚刚生成的头文件的搜索路径) 。
要注意设置好编译器输出的动态库文件名,要和loadLibrary中的一致(在Windows下如果xxx是"pzc”,那输出的就是pzc.dll,如果是linux,就是libpzc.so)。
还要注意设置编译器的其他参数,如:--add-stdcall-alias(在Windows下需要)(查看gcc手册就知道它的意思)。
编译好dll后把dll复制到java项目空间就行了。 有时gcc选项还要加-m32,按照原文所说的,意思应该是,如果是在64位的机器上想 ......

Java调用C/C++ – JNI

昨天才看到,但是遇到一些问题,今天解决了,记下……(参考:http://netbeans.org/kb/55/beginning-jni-part1.html)
我用的是Netbeans 6.7,但是和其他的也应该大同小异吧。 基本流程: Java这边的:
创建java文件(带native的),还要记得在类中加入:System.loadLibrary(xxx) 。
然后用javah来生成C/C++的头文件(比如:javah –o pzc.h –jni –classpath … pzjava.Main)。 C这边的:
做一个“中间层”的C或者C++文件,include刚才生成的头文件,把方法复制下来。
还要记得把%JAVA_HOME%\include\和%JAVA_HOME%\include\win32添加到编译器的头文件搜索路径中(还要添加上刚刚生成的头文件的搜索路径) 。
要注意设置好编译器输出的动态库文件名,要和loadLibrary中的一致(在Windows下如果xxx是"pzc”,那输出的就是pzc.dll,如果是linux,就是libpzc.so)。
还要注意设置编译器的其他参数,如:--add-stdcall-alias(在Windows下需要)(查看gcc手册就知道它的意思)。
编译好dll后把dll复制到java项目空间就行了。 有时gcc选项还要加-m32,按照原文所说的,意思应该是,如果是在64位的机器上想 ......

sql 2005 存储过程分页 java 代码

 create PROCEDURE pagelist
@tablename nvarchar(50),
@fieldname nvarchar(50)='*',         
@pagesize int output,--每页显示记录条数
@currentpage int output,--第几页
@orderid nvarchar(50),--主键排序
@sort int,--排序方式,1表示升序,0表示降序排列
@rowcount int output,--总记录数,共有几条信息
@pagecount int output--总页数,共有多少页
AS
declare @countsql nvarchar(50)
declare @sql nvarchar(200)
declare @subsql nvarchar(100)--not in子sql语句
declare @tmpOrderid nvarchar(50)
--返回总记录数,并赋值给输出参数@rowcount
set @countsql='select @totalcount=count(*) from '+@tablename
exec sp_executesql @countsql,N'@totalcount int out',@rowcount output
--判断字段名是否为空
if @fieldname is null or @fieldname=''
set @fieldname=' * '
--判断是否排序及排序方式
if @orderid is null or @orderid=''
set @tmpOrderid=' '
else
begin
if @sort=0
set @tmpOrderid='order by '+@orderid+' desc'
else
set @tmpOrderid='order by '+@orderid+' asc' ......

sql 2005 存储过程分页 java 代码

 create PROCEDURE pagelist
@tablename nvarchar(50),
@fieldname nvarchar(50)='*',         
@pagesize int output,--每页显示记录条数
@currentpage int output,--第几页
@orderid nvarchar(50),--主键排序
@sort int,--排序方式,1表示升序,0表示降序排列
@rowcount int output,--总记录数,共有几条信息
@pagecount int output--总页数,共有多少页
AS
declare @countsql nvarchar(50)
declare @sql nvarchar(200)
declare @subsql nvarchar(100)--not in子sql语句
declare @tmpOrderid nvarchar(50)
--返回总记录数,并赋值给输出参数@rowcount
set @countsql='select @totalcount=count(*) from '+@tablename
exec sp_executesql @countsql,N'@totalcount int out',@rowcount output
--判断字段名是否为空
if @fieldname is null or @fieldname=''
set @fieldname=' * '
--判断是否排序及排序方式
if @orderid is null or @orderid=''
set @tmpOrderid=' '
else
begin
if @sort=0
set @tmpOrderid='order by '+@orderid+' desc'
else
set @tmpOrderid='order by '+@orderid+' asc' ......
总记录数:6386; 总页数:1065; 每页6 条; 首页 上一页 [877] [878] [879] [880] 881 [882] [883] [884] [885] [886]  下一页 尾页
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号