我想密码保护Wicket中的网页,以便用户只有在他/她登录后才能访问它.
我也想要显示登录页面的页面,然后在登录用户试图访问的原始页面之后.
怎么用wicket完成?我已经创建了一个登录页面并扩展了会话类.
我正在尝试更新ConcurrentDictionary中的条目,如下所示:
class Class1
{
public int Counter { get; set; }
}
class Test
{
private ConcurrentDictionary<int, Class1> dict =
new ConcurrentDictionary<int, Class1>();
public void TestIt()
{
foreach (var foo in dict)
{
foo.Value.Counter = foo.Value.Counter + 1; // Simplified example
}
}
}
Run Code Online (Sandbox Code Playgroud)
基本上我需要遍历字典并更新每个Value上的字段.我从文档中了解到我需要避免使用Value属性.相反,我认为我需要使用TryUpdate,除了我不想替换我的整个对象.相反,我想更新对象上的字段.
在PFX团队博客上阅读此博客条目之后:也许我需要使用AddOrUpdate并且在添加委托中什么也不做.
有没有人对如何做到这一点有任何见解?
我在字典中有成千上万的对象,我需要每30秒左右更新一次.创建新的以更新属性可能是不可行的.我需要克隆现有对象,更新它并替换字典中的对象.我还需要在克隆/添加周期的持续时间内锁定它.呸.
我想做的是迭代对象并尽可能直接更新Counter属性.
我的最新研究让我看到了Parallel.ForEach,这听起来很棒,但不应该用于更新状态的动作.
我也看到了Interlocked.Increment的提及听起来不错,但我仍然需要弄清楚如何以线程安全的方式在我的字典中的每个元素上使用它.
我理解emacs lisp非常适合处理日期和时间,但它是否有一个函数将字符串转换为使用%Y, %m, %d, %H, %M, %S,等等格式的整数的内部表示?而且,在emacs参考手册中,它说时间是两个或三个整数的列表,但是有更正式的规范或描述吗?〜谢谢〜
编辑:感谢您的回复 - 但我想我是否想知道是否有一个函数反向格式化时间字符串(就像parse-time-string输入字符串的结构规范一样)?
Edit2:我想答案是没有内置......但是这里已经实现了部分实现.
我有以下xml文件:
<?xml version="1.0" encoding="UTF-8"?>
<c1>
<c2 id="0001" n="CM" urlget="/at/CsM" urle="/E/login.jsp">
</c2>
<c2 id="0002" n="C2M" urlget="/a2t/CsM" urle="/E2/login.jsp">
</c2>
</c1>
Run Code Online (Sandbox Code Playgroud)
我试图以这种方式加载c2的属性:
Document d =
DocumentBuilderFactory.newInstance()
.newDocumentBuilder()
.parse("epxy.xml");
Element c1 = d.getDocumentElement();
Element c2 = (Element)c1.getFirstChild();
while (c2 != null) {
...
c2 = (Element)c2.getNextSibling();
}
Run Code Online (Sandbox Code Playgroud)
但我得到异常java.lang.ClassCastException:org.apache.xerces.dom.DeferredTextImpl与 行中的org.w3c.dom.Element不兼容
Element c2 = (Element)c1.getFirstChild();
Run Code Online (Sandbox Code Playgroud)
在循环之前.
任何提示?谢谢.
我只是在学习Haskell.我认为这会产生一个因子函数......
(在ghci内)
Prelude> let ft 0 = 1
Prelude> let ft n = n * ft (n - 1)
Prelude> ft 5
Run Code Online (Sandbox Code Playgroud)
(无限期挂起,直到^ C).
有人能指出我正确的方向吗?
谢谢!
我正在使用C++递归地制作一个六边形网格(使用多重链接列表样式).我已经将它设置为轻松创建相邻的图块,但因为我正在递归地执行它,所以我只能为给定的图块创建所有6个邻居.显然,这会导致重复的瓷砖被创建,我试图以某种方式摆脱它们.因为我正在使用类,检查空指针似乎不起作用.它要么无法从我的Tile类转换为int,要么以某种方式转换它但没有正确地执行它.我在创建时明确地将所有指针设置为NULL,当我检查它是否仍然存在时,它表示即使我从未触及它,因为初始化.有没有一种特定的方式我应该这样做?没有某种类型的NULL,我甚至无法遍历网格
这是我的一些相关代码.是的,我知道这很令人尴尬.
Tile类头:
class Tile
{
public:
Tile(void);
Tile(char *Filename);
~Tile(void);
void show(void);
bool LoadGLTextures();
void makeDisplayList();
void BindTexture();
void setFilename(char *newName);
char Filename[100];
GLuint texture[2];
GLuint displayList;
Tile *neighbor[6];
float xPos, yPos,zPos;
};`
Run Code Online (Sandbox Code Playgroud)
平铺初始化:
Tile::Tile(void)
{
xPos=0.0f;
yPos=0.0f;
zPos=0.0f;
glEnable(GL_DEPTH_TEST);
strcpy(Filename, strcpy(Filename, "Data/BlueTile.bmp"));
if(!BuildTexture(Filename, texture[0]))
MessageBox(NULL,"Texture failed to load!","Crap!",MB_OK|MB_ICONASTERISK);
for(int x=0;x<6;x++)
{
neighbor[x]=NULL;
}
}
Run Code Online (Sandbox Code Playgroud)
创建相邻的瓷砖:
void MakeNeighbors(Tile *InputTile, int stacks)
{
for(int x=0;x<6;x++)
{
InputTile->neighbor[x]=new Tile();
InputTile->neighbor[x]->xPos=0.0f;
InputTile->neighbor[x]->yPos=0.0f;
InputTile->zPos=float(stacks);
}
if(stacks)
{
for(int x=0;x<6;x++)
MakeNeighbors(InputTile->neighbor[x],stacks-1);
}
}
Run Code Online (Sandbox Code Playgroud)
最后,遍历网格: …
我正在使用这个片段
CSharpCodeProvider codeProvider =
new CSharpCodeProvider(
new Dictionary<String, String> { { "CompilerVersion", "v3.5" } });
Run Code Online (Sandbox Code Playgroud)
用于动态代码编译的3.5编译器.
我假设我应该使用"v4.0"切换到4.0编译器?
如何在执行Python脚本之前临时设置PYTHONPATH环境变量?
在*nix中,我可以这样做:
$ PYTHONPATH='.' python scripts/doit.py
Run Code Online (Sandbox Code Playgroud)
在Windows中,当然这种语法不起作用.但是等价物是什么?
在Rails应用程序中为每个视图添加页眉和页脚的标准方法是什么?
我有一个UITableView,标题中有一个视图.此视图具有细条纹背景并包含UILabel.我希望UILabel文本看起来像节标题的文本.我怎样才能做到这一点?
iphone cocoa-touch objective-c interface-builder uitableview
c# ×2
.net ×1
.net-4.0 ×1
c#-4.0 ×1
c++ ×1
cocoa-touch ×1
command-line ×1
concurrency ×1
dom ×1
elisp ×1
emacs ×1
footer ×1
ghci ×1
haskell ×1
header ×1
iphone ×1
java ×1
linked-list ×1
objective-c ×1
python ×1
recursion ×1
uitableview ×1
wicket ×1
windows ×1
xml ×1