我想问一个关于java web应用程序的问题.当我开始学习JSP时,我总是听说Java EE Web应用程序.但我不知道这个词的实际含义.任何人都可以向我解释这个词吗?谢谢.
当我找到php的脚本或查看php框架时,我看到一个"注册表类"或"容器类",它通常使用__get魔术方法保存变量或其他对象.
这是我的意思的简化示例:
例1:
class container {
private $objects;
public function __get($class){
if(isset($this->objects[$class])){
return $this->objects[$class];
}
return $this->objects[$class] = new $class();
}
}
Run Code Online (Sandbox Code Playgroud)
上面的例子在创建类时会有更多的函数,而不是只调用它,但对于我的例子,它应该就足够了."示例1"是我在从互联网下载的脚本中大多看到的,它维护着一个单独的类实例,现在我想知道的是,这个例子不会做同样的事情并且效率更高:
例2:
class simplecontainer {
public function __get($class){
return $this->$class = new $class();
}
}
Run Code Online (Sandbox Code Playgroud)
但我从未在其他人的剧本中看到"例2",这使我在考虑使用它之前会三思而后行.
我使用它们将包含的几个类来测试容器与简单容器,并且重复使用大约100000次,"示例1"在我的本地机器上以0.75秒进行测试,"示例2"在0.29秒内进行测试.
我应该在我的脚本中使用哪个?例1或例2?为什么?
我使用了这段代码,但它不起作用:
需要两个gps坐标之间的距离,如41.1212,11.2323英里(Java)
double d2r = (180 / Math.PI);
double distance = 0;
try{
double dlong = (endpoint.getLon() - startpoint.getLon()) * d2r;
double dlat = (endpoint.getLat() - startpoint.getLat()) * d2r;
double a =
Math.pow(Math.sin(dlat / 2.0), 2)
+ Math.cos(startpoint.getLat() * d2r)
* Math.cos(endpoint.getLat() * d2r)
* Math.pow(Math.sin(dlong / 2.0), 2);
double c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));
double d = 6367 * c;
return d;
} catch(Exception e){
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud) 关于cascade ="delete"是如何工作的,我很困惑.我在City映射文件中按以下方式定义了映射:
<set inverse="true" name="client" cascade="delete">
<key>
<column name="id_name"/>
</key>
<one-to-many class="model.Client"/>
</set>
Run Code Online (Sandbox Code Playgroud)
类Client具有类City的外键.
所以当我跑:
List object = null;
try {
org.hibernate.Transaction tx = session.beginTransaction();
try {
session.delete("from City where row_id=" + row_id and table_id = " + table_id);
} catch (Exception e) {
e.printStackTrace();
}
}
Run Code Online (Sandbox Code Playgroud)
是否应该删除所有客户端,还是必须以某种方式处理它?我是否正确地将查询作为方法参数传递给会话的delete()方法?谢谢你的帮助.最诚挚的问候,sass.
以下是使用valueChanged事件链接到UISwitch的IBAction方法:
- (IBAction) sanitySwitch {
if (checkoption.on == YES) {
NSLog(@"SanityCheck ENABLED");
sanityCheck = YES;
} else {
NSLog(@"SanityCheck DISABLED");
sanityCheck = NO;
}
}
Run Code Online (Sandbox Code Playgroud)
它总是返回"SanityCheck DISABLED".UISwitch checkoption正确地链接到XIB文件中的对象,并且已经放置了正确的@propery和@syntetize设置.
我想知道如何根据一系列字符在php中拆分字符串.例如,我有一个字符串:a ^ b ^^ c ^^^ d ^^^^ e
现在我如何将这个字符串分成一个数组:a,b,c,d,e?php爆炸功能似乎在这里不起作用....
请帮忙..
我有一个应用程序,我需要从数据库中检索大量的行,然后在屏幕上打印它们.我检查了mysql查询,这不是问题所在.问题是所有行都需要打印在同一页面上,没有分页,而且需要很长时间(我说的是一个带有几行行的表).有什么方法可以加快速度吗?我在Google上发现的唯一一件事是使用","而不是"." 使用echo时 我将测试这个以确定是否有任何改进,但我不确定它会产生如此大的差异.
import java.io.*;
public class TerminateWhen
{
public static void main(String args[]) throws IOException
{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = "";
System.out.println("Type \"x\" to exit..");
do {
str = br.readLine();
System.out.println(str);
}
while(str!="x");
}
}
Run Code Online (Sandbox Code Playgroud)
问题是即使输入"x",循环也不会退出..
我不知道是否可能,但我希望能够写出如下内容:
{% with var1 var2 var3 as some_list %}
{{ some_list|maximum }}
{% endwith %}
Run Code Online (Sandbox Code Playgroud)
从任意数量的模板变量和/或文字中动态创建列表似乎很有用,所以我希望我忽略了一些简单的事情.
但是,如果不这样做,我想知道如何创建一个接受任意数量参数的模板标签.(我玩过simple_tag
,适用于接受固定数量参数的标签.)
我不想去创建解析器和子类化的麻烦,django.template.Node
直到我确定没有更简单的解决方案.
我知道MESI协议用于在多处理器系统中实现高速缓存一致性.但我不知道它是如何实施的.对此有任何帮助非常感谢.