很长一段时间,我一直在LAMP堆栈中工作.但现在我需要处理java,jsp和servlets(Tomcat Server)中的一个项目,我以前从未在java,jsp中工作过.所以我需要一些帮助来设置我的笔记本电脑中的东西,以便我可以在我的浏览器中执行java和jsp脚本.我知道网上有很多提供教程的链接.但有人可以指出我的好处,它显示了所有步骤:例如:
安装Tomcat
安装java
在浏览器中编译,构建,测试java,jsp,servlets
或者其他任何可以帮助我开始并学习开发Web应用程序的正确方法的东西
我想我明白它是传递给方法的对象/数据成员的副本tricky(),因为只有值才是重要的,而不是实际的对象本身.但是打印语句向我保证,arg1并且arg2副本确实在方法中切换.我不明白为什么这不会将信息传回原始对象,从而切换它们; 看作该方法能够成功访问方法中的arg1.x和arg1.y成员.
// This class demonstrates the way Java passes arguments by first copying an existing
// object/data member. This is called passing by value. the copy then points(refers)
// to the real object
// get the point class from abstract window toolkit
import java.awt.*;
public class passByValue {
static void tricky(Point arg1, Point arg2){
arg1.x = 100;
arg1.y = 100;
System.out.println("Arg1: " + arg1.x + arg1.y);
System.out.println("Arg2: " + …Run Code Online (Sandbox Code Playgroud) 我有一个GroovyRowResult带有两列的 groovy (使用 sql.rows)。第一列在 sql 中有一个 group by,所以它总是唯一的。
现在我想将整个结果转换成一个映射,其中包含第一列值作为键和第二列值作为值。我知道我可以对每一行都这样做(见下文),但想知道是否有更好的方法。我发现的唯一一件事是 entrySet(),它不起作用。错误是:
Message: No signature of method:
java.util.ArrayList.entrySet() is applicable for argument types: () values: [])
Run Code Online (Sandbox Code Playgroud)
所以我的每一行方式是:
def myMap = [:]
result.each {
myMap.put(it.colum1, it.column2)
}
Run Code Online (Sandbox Code Playgroud)
另一种选择是,以某种方式进行查询,该查询将返回一个以第一列作为键,第二列作为值(或整行作为值)的映射。Zend 框架的一种 fetchAssoc() 方法。
这是我的班级
package main;
import java.util.Hashtable;
public class Information {
private final static String name = "Info Name";
private final static String direccion = "direction street number";
Hashtable<String,String> coordenates = new Hashtable<String,String>();
coordenates.put("lat", "36.564565465");
coordenates.put("lng", "64.584616511");
}
Run Code Online (Sandbox Code Playgroud)
我从oracle文档中学到了很多东西
This example creates a hashtable of numbers. It uses the names of the numbers as keys:
Hashtable<String, Integer> numbers
= new Hashtable<String, Integer>();
numbers.put("one", 1);
numbers.put("two", 2);
numbers.put("three", 3);
To retrieve a number, use the following code:
Integer n = numbers.get("two"); …Run Code Online (Sandbox Code Playgroud)