成都网站建设设计

将想法与焦点和您一起共享

java代码之间交互 javascript java交互

怎么让java两个类之间进行交互

HI我..

公司主营业务:网站制作、成都网站制作、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联建站是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联建站推出章丘免费做网站回馈大家。

通过构造方法就可以把那个引用传过去了。。

如果你是在一个窗口干什么后打开另一个窗口的。。就是说你在一个窗口中打开另一个窗口的。。

TextFrame 类 这里面有个文本框和一个按钮。。点击按钮就打开另一个窗口。。

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JPanel;

import javax.swing.JTextField;

public class TextFrame extends JFrame {

public JTextField jt;

/**

* @param args

*/

public TextFrame() {

JLabel jl = new JLabel("文本框:");

this.jt = new JTextField(15);

JButton jb = new JButton("点击");

jb.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent arg0) {

new ButtonFrame(TextFrame.this);

}

});

JPanel jp = new JPanel();

jp.add(jl);

jp.add(jt);

jp.add(jb);

this.add(jp);

this.setBounds(100, 100, 100, 100);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.setVisible(true);

}

public static void main(String[] args) {

new TextFrame();

}

}

ButtonFrame 类。。这里面有个按钮。点击就可以设置这边这个文本框的内容了。。

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JOptionPane;

import javax.swing.JPanel;

public class ButtonFrame extends JFrame {

private TextFrame jf;

public ButtonFrame(TextFrame frame) {

this.jf = frame;

JButton jb = new JButton("点击设置");

jb.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent arg0) {

String str = JOptionPane.showInputDialog("请输入", null);

ButtonFrame.this.jf.jt.setText(str);

}

});

JPanel jp = new JPanel();

jp.add(jb);

this.add(jp);

this.setBounds(250, 250, 100, 100);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.setVisible(true);

}

}

如果两个类都是单独运行的。。没有任何关系的话(即不是在一个窗口中点击上面东西或是干什么就打开另一个窗口)。。都是独立运行的。。

那就需要用到socket了哦。。

下面两个类你都单独运行就是了哈。。

服务器端:SocketManager类。这里面有个文本框。。

import java.io.DataInputStream;

import java.io.DataOutputStream;

import java.io.IOException;

import java.net.ServerSocket;

import java.net.Socket;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JPanel;

import javax.swing.JTextField;

public class SocketManager extends JFrame {

/**

* @param args

* @throws IOException

*/

private JTextField jt;

public static void main(String[] args) {

SocketManager manager = new SocketManager();

manager.doListen();

}

public SocketManager() {

JLabel jl = new JLabel("文本框:");

this.jt = new JTextField(15);

JPanel jp = new JPanel();

jp.add(jl);

jp.add(jt);

this.add(jp);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.setVisible(true);

}

public void doListen() {

ServerSocket server;

try {

server = new ServerSocket(9991);

while (true) {

Socket client = server.accept();

new Thread(new SSocket(client)).start();

}

} catch (IOException e) {

e.printStackTrace();

}

}

// 服务器进程

class SSocket implements Runnable {

Socket client;

public SSocket(Socket client) {

this.client = client;

}

public void run() {

DataInputStream input;

while (true) {

try {

input = new DataInputStream(client.getInputStream());

try {

String listMsg = input.readUTF();

SocketManager.this.jt.setText(listMsg);

} catch(Exception e) {

break;

}

} catch (IOException e) {

e.printStackTrace();

}

}

}

}

}

客户端:Client类 有个按钮。。点击弹出输入框输入内容。。服务器的文本框就显示你输入的内容

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.io.DataOutputStream;

import java.io.IOException;

import java.io.OutputStream;

import java.net.Socket;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JOptionPane;

import javax.swing.JPanel;

public class Client extends JFrame {

private static Socket socket;

OutputStream netOut;

DataOutputStream doc;

public Client() {

try {

socket = new Socket("127.0.0.1", 9991);

this.netOut = socket.getOutputStream();

this.doc = new DataOutputStream(netOut);

} catch(Exception e) {

e.printStackTrace();

}

JButton jb = new JButton("点击设置");

jb.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent arg0) {

String str = JOptionPane.showInputDialog("请输入", null);

try {

doc.writeUTF(str);

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

});

JPanel jp = new JPanel();

jp.add(jb);

this.add(jp);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.setVisible(true);

}

public static void main(String[] args) {

new Client();

}

}

Java项目怎样让另一个类中的代码跟这个类里面的代码一起执行

1、在Java项目中新建一个类。然后在调用类中先进行被调用类实例化,然后通过实例化的对象访问。

2、在Java项目中新建一个类,将该类中需要被调用的方法设置为静态(static),加了static后,就可以用类名直接调用。然后在调用类中直接通过类名进行访问。3、这样就可以让Java项目另一个类中的代码跟这个类里面的代码一起执行了。

spring 中如何实现jsp与java的交互

spring中利用mvc框架就可以实现jsp和java交互了。

以下用spring mvc输出hello world为例来说明:

一、项目依赖的jar包:

1.Spring框架依赖的jar包:

日志:commons-logging-1.1.3.jar;

JSTL支持:jakarta-taglibs-standard-1.1.2中的jstl.jar和standard.jar;

2.Spring的jar包:

spring-framework-3.2.5.RELEASE/libs中的jar包(这里为了方便我直接把全部都复制过去了);

把以上的jar包全部复制到项目的WebContent/WEB-INF/lib目录中。

二、在/WEB-INF中添加web.xml文件,文件内容如下:

?xml version="1.0" encoding="UTF-8"?

web-app xmlns:xsi="" xmlns="" xmlns:web="" xsi:schemaLocation=" " id="WebApp_ID" version="3.0"

display-nameSpringMVCLesson/display-name

   

servlet

   servlet-nameSpringMVCLesson/servlet-name

   servlet-classorg.springframework.web.servlet.DispatcherServlet/servlet-class

   init-param

       param-namecontextConfigLocation/param-name

       param-valueclasspath:springservlet-config.xml/param-value

   /init-param

   load-on-startup1/load-on-startup!-- load-on-startup必须放在最后 --

/servlet

!-- Spring MVC配置文件结束 --

servlet-mapping

   servlet-nameSpringMVCLesson/servlet-name

   url-pattern//url-pattern

/servlet-mapping

/web-app

三、springservlet-config.xml文件配置:

在项目中新建一个resources的Source Folder文件夹,并添加springservlet-config.xml文件。

?xml version="1.0" encoding="UTF-8"?

beans xmlns=""

xmlns:xsi=""

xmlns:p=""

xmlns:context=""

xmlns:util=""

xmlns:mvc=""

xsi:schemaLocation="

"

!-- 默认的注解映射的支持 --  

mvc:annotation-driven/

 

!-- 如果当前请求为“/”时,则转发到“/helloworld/index” --

mvc:view-controller path="/" view-name="forward:/helloworld/index"/

!-- 静态资源映射 --

mvc:resources mapping="/js/**" location="/WEB-INF/js/" /

mvc:resources mapping="/css/**" location="/WEB-INF/css/" /

mvc:resources mapping="/fonts/**" location="/WEB-INF/fonts/" /

mvc:resources mapping="/plugins/**" location="/WEB-INF/plugins/" /

mvc:resources mapping="images/**" location="/WEB-INF/images/" /

!-- 当上面要访问的静态资源不包括在上面的配置中时,则根据此配置来访问 --

mvc:default-servlet-handler/

!-- 开启controller注解支持 --

!-- use-default-filters="false" 只扫描指定的注解 --

context:component-scan base-package="com.demo.web.controllers" use-default-filters="false"

   context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/

/context:component-scan

 

!-- 视图解析器 --

bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"

  property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/

  property name="contentType" value="text/html"/        

  property name="prefix" value="/WEB-INF/views/"/

  property name="suffix" value=".jsp"/

/bean

/beans

mvc:annotation-driven/ 开启注解映射支持,它是为了简化配置的缩写形式,它相当于以下2个配置:

bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"/

bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"/

由于我们在web.xml文件里面配置的是拦截所有的请求到该servlet,所以我们在这里要对静态资源文件映射作一下配置,否则请求这些资源文件会返回404:

!-- 静态资源映射 --

mvc:resources mapping="/js/**" location="/WEB-INF/js/" /

mvc:resources mapping="/css/**" location="/WEB-INF/css/" /

mvc:resources mapping="/fonts/**" location="/WEB-INF/fonts/" /

mvc:resources mapping="/plugins/**" location="/WEB-INF/plugins/" /

mvc:resources mapping="images/**" location="/WEB-INF/images/" /

!-- 当上面要访问的静态资源不包括在上面的配置中时,则根据此配置来访问 --

mvc:default-servlet-handler/

开启Controller注解支持,并配置只扫描指定包下面的Controller:

context:component-scan base-package="com.demo.web.controllers" use-default-filters="false"

context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/

/context:component-scan

配置视图解析器,并指定视图所在的文件夹:

bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"

property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/

property name="contentType" value="text/html"/        

property name="prefix" value="/WEB-INF/views/"/

property name="suffix" value=".jsp"/

/bean

添加HelloWorldController,在项目中新建一个web的Source Folder文件夹,并在文件夹下面添加com.demo.web.controllers包,在包中添加一个HelloWorldController类,类中内容如下:

package com.demo.web.controllers;

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RequestMethod;

import org.springframework.web.servlet.ModelAndView;

@Controller

@RequestMapping(value = "/helloworld")

public class HelloWorldController {

@RequestMapping(value="/index", method = {RequestMethod.GET})

public ModelAndView index(){

   

   ModelAndView modelAndView = new ModelAndView();  

   modelAndView.addObject("message", "Hello World!");  

   modelAndView.setViewName("index");  

   return modelAndView;

}

}

其中@Controller 注解把该class指定为controller,controller 上的@RequestMapping 注解的 value值指定该controller所映射的请求。

方法上的@RequestMapping 注解指定该方法为一个action,value 值指定该action所映射的请求,method 中的RequestMethod.GET指定该action只接受get请求。

ModelAndView 中的setViewName指定了该action所对应的视图名称,解析视图时会在springservlet-config.xml文件指定的视图文件夹中寻找对应的视图。

添加视图,在项目/WEB-INF文件夹下新建一个views文件夹,并在views中添加index.jsp视图,视图内容如下:

%@ page language="java" contentType="text/html; charset=UTF-8"

pageEncoding="UTF-8"%

!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" ""

html

head

meta http-equiv="Content-Type" content="text/html; charset=UTF-8"

titleInsert title here/title

/head

body

${message}

/body

/html

运行项目输出结果:

贪吃蛇java代码具有交互功能吗

有。贪吃蛇自行编辑java代码使其具有交互功能是可以的。实现贪吃蛇游戏基本功能,屏幕上随机出现一个“食物”,称为豆子。玩家能利用上下左右键控制“蛇”的移动,“蛇”吃到“豆子”后“蛇”身体加长一节,得分增加,“蛇”碰到边界或蛇头与蛇身相撞,“蛇”死亡,游戏结束。


当前文章:java代码之间交互 javascript java交互
链接分享:http://chengdu.cdxwcx.cn/article/dogipeo.html